2015-12-07 2 views
1

У меня есть веб-страницы, содержащие IFRAME:Получение Iframe данных из Android WebView

<div id="confIMG" style="display:block;"> 
    <iframe id="ifrmy" src="http://www.example.com" style="margin:0;padding:0;border:0;overflow:hidden;height:200px;width:90%;'" scrolling="no"> 
    </iframe> 
    #document 
    <!DOCTYPE html> 
    <html> 
     <head>....</head> 
     <body>....</body> 
    </html> 
</div> 

для получения всех источников HTML, я использовал JavaScript:

javascript:HTMLOUT.processHTML(document.documentElement.outerHTML); 

Но, когда слушатель вызывается, я просто вижу:

<div id="confIMG" style="display:block;"> 
    <iframe id="ifrmy" src="http://www.example.com" style="margin:0;padding:0;border:0;overflow:hidden;height:200px;width:90%;'" scrolling="no"> 
    </iframe> 
</div> 

проблема в том, что весь документ iframe пропущен. Как я могу получить их все?

Я также попытался получить страницу с помощью JSOUP. в этом случае я получаю только:

<div id="confIMG" style="display:block;"></div> 

PS: Я попытался проверить браузер Chrome. Я могу видеть только исходный код, когда я использую developer options/developers tools на вкладке elements.

ответ

0

JSoup не будет автоматически извлекать содержимое iframe, если вы не попросите его сделать это.

Когда вы сначала загрузили страницу, найдите iframe, затем выберите его с помощью Jsoup.

Document doc=... 
Element ifrmy = doc.select("#ifrmy").first(); 

if (ifrmy!=null) { 
    Document iframeContent = Jsoup.connect(ifrmy.attr("src")).get(); 
    // ... 
} 
+0

Спасибо, но единственный способ я нашел, чтобы получить IFRAME (а не содержание, а просто TAG) использует JavaScript ... когда я пытаюсь получить страницу с помощью JSOUP, я получил только пустой DIV ! Кажется, что JSOUP получает только первые уровни DIVs – fabrysious

Смежные вопросы