Почему тег img не имеет значения src после анализа с помощью jsoup? - PullRequest
0 голосов
/ 12 мая 2019

Хочу получить значение src из тега html img.по хрому и внутри элемента inspect я вижу значение src, но когда я анализирую его с помощью библиотеки jsoup, src не имеет значения, вот мой код:

document = Jsoup.connect("http://estelam.rahvar120.ir/index.jsp? 
pageid=2371666&p=1").userAgent(USERAGENT).method(Connection.Method.GET)
.execute().parse();

Element element = document.select("img[id=capimg]").first(); //img 
tag element
String absoluteUrl = element.absUrl("src"); // absoluteUrl = ""
String srcValue = element.attr("src"); // srcValue = ""

сайт недоступен из других стран, но я хочу разобрать html:

<img id="capimg" alt="Enter Captcha :" 
src="" width="200" height="60">

Проблема в том, что jsoup получает html-контент прямо перед тем, как javascript установил значение src, Что мне делать?

1 Ответ

0 голосов
/ 15 мая 2019

Добро пожаловать в ТАК!

Проблема, с которой вы столкнулись, не может быть решена с помощью Jsoup, поскольку Jsoup - это анализатор HTML, а не браузер. А поскольку это не браузер, любой контент, отображаемый с помощью javascript, не будет отображаться с помощью Jsoup.

Вам нужен еще один инструмент, имитирующий веб-браузер, например Selenium

Есть несколько способов сделать это.

  1. Используйте Selenium для обработки поиска и удаления страниц.
  2. Используйте Selenium для получения динамических страниц и JSoup для анализа и удаления содержимого.

Я лично рекомендую второй подход, потому что мне удобнее использовать Jsoup для утилизации.

...