Jsoup не читает / загружает всю страницу - PullRequest
0 голосов
/ 06 ноября 2019

http://www.missouribotanicalgarden.org/PlantFinder/PlantFinderListResults.aspx?letter=A

Похоже, что какой-то контент загружается позже, после того, как jsoup читает страницу? В doc.html () нет «Abelia chinensis» или других элементов из списка

Document doc = Jsoup.connect("http://www.missouribotanicalgarden.org/PlantFinder/PlantFinderListResults.aspx?letter=A")
        .header("Accept-Encoding", "gzip, deflate")
        .userAgent("Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/535.21 (KHTML, like Gecko) Chrome/19.0.1042.0 Safari/535.21")
        .ignoreContentType(true)               
        .ignoreHttpErrors(true)
        .followRedirects(true)
        .timeout(600000)
        .maxBodySize(0)/*unlimited body size*/
        .get();  

    responseBody =  doc.html();

1 Ответ

0 голосов
/ 06 ноября 2019

Abelia chinensis есть, но вы, возможно, пропустили его, потому что HTML странным образом построен следующим образом:

<i>Abelia</i> <i>chinensis</i>

Для выбора каждой ссылки с именем используйте:

Elements links = doc.select("a[id^=MainContentPlaceHolder_SearchResultsList_TaxonName_]");

Это означает выбирать каждые <a> с идентификатором, начинающимся с MainContentPlaceHolder_SearchResultsList_TaxonName_. Он выбирает ровно 821 результат.

...