Jsoup не может получить полный контент с веб-страницы (нет ошибок/исключений, но пропускает часть контента)

Я пытаюсь получить содержимое со следующей страницы с помощью JSOUP:

http://www.exchangeandmart.co.uk/used-cars-for-sale

Но он не извлекает div с id=results, хотя он виден, когда я открываю ту же ссылку из браузера. Помогите пожалуйста мне

Java-код:

Connection connection = Jsoup.connect("http://www.exchangeandmart.co.uk/used-cars-for-sale");
Document doc = connection.get();
System.out.println(doc.getElementById("results")); // prints null

ПРИМЕЧАНИЕ. При загрузке страницы исключений или ошибок нет. Отсутствует только часть контента на странице. Я распечатал весь документ на консоли с помощью System.out.println(doc); , он сильно отличался от страницы, которую я просматриваю в браузере.


person jem    schedule 14.11.2011    source источник
comment
doc.toString() что-нибудь выводит? Если нет, то проблема связана с установлением соединения с сервером и загрузкой данных.   -  person Indrek Kõue    schedule 15.11.2011
comment
@SYLARRR Я отредактировал свой ответ, посмотрите еще раз.   -  person jem    schedule 15.11.2011
comment
Вы случайно не используете JSoup из Android? В этом случае может отображаться мобильная веб-страница, на которой нет элементов с идентификатором results.   -  person Indrek Kõue    schedule 15.11.2011


Ответы (1)


Document doc = Jsoup.connect("http://www.exchangeandmart.co.uk/used-cars-for-sale").userAgent("Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.2 (KHTML, like Gecko) Chrome/15.0.874.120 Safari/535.2").get();

Теперь страница должна отображаться как доступная из Chrome на ПК.

person Indrek Kõue    schedule 15.11.2011
comment
Позвольте мне проверить, я использую его на своем компьютере, но НЕ на Android. Но будем надеяться на хорошее. - person jem; 15.11.2011
comment
О боже мой, это сработало и сработало отлично. Большое спасибо большое спасибо - person jem; 15.11.2011
comment
Но я использую его на ПК, тогда почему он не работает без работы с userAgent? - person jem; 15.11.2011
comment
Причина проста: когда вы заходите на веб-страницу с помощью Jsoup с вашего ПК, строка агента пользователя по умолчанию — это что-то APPACHECLIENT 1.4 \ UNKNOWN. И похоже, что веб-сайт http://www.exchangeandmart.co.uk не знает, как обращаться с такими пользователями/браузерами. - person Indrek Kõue; 15.11.2011
comment
это не работает. пожалуйста, включите джаваскрипт. ПОТОМУ ЧТО, когда я перехожу к ссылке с Chrome и перехожу к источнику страницы, я не вижу все элементы, но когда я нажимаю «Проверить элемент», я вижу что угодно. - person ; 01.12.2015