Извлечение «скрытого» HTML с помощью Jsoup

Я пытаюсь получить данные HTML, которые не отображаются в исходном документе, но могут быть раскрыты, например, «проверять элемент» в Google Chrome.

Пример страницы: http://assignment.uspto.gov/#/search?q=9000000&sort=patAssignorEarliestExDate%20desc%2C%20id%20desc&synonyms=false

Существует несколько элементов div, содержащих данные о присвоении для US Patent No. 9,000,000, которые отображаются ниже строки

 

Есть ли способ извлечь этот скрытый html с Jsoup?

Кажется, что данные загружены с помощью AJAX. JSoup не обрабатывает Javascript.

Вам нужен API-интерфейс «безгласного браузера», который обрабатывает Javascript без фактического визуализации чего-либо.

HtmlUnit, кажется, самый известный инструмент, хотя я никогда не использовал его сам. Как было предложено ранее, Selenium Webdriver также является опцией.

Я считаю, что вам придется загружать URL-адрес, ждать, пока все AJAX будет обработано, и в итоге вы получите почти то же дерево синтаксического анализа, которое вы получаете в Chrome на Java, чтобы сделать это по своему усмотрению!

Если это единственная информация, которая вам понадобится, вот URL JSON для информации, которую вы ищете:

http://prod-proxy-lb-2117675230.us-east-1.elb.amazonaws.com/solr/aotw/search?json.wrf=jQuery1102004354461841285229_1448413727331&q=9000000&facet.date.other=before&rows=20&start=0&wt=json&facet. date.start = СЕЙЧАС% 2FYEAR-50years & П = ID% 2CreelNo% 2CframeNo% 2CconveyanceText% 2CpatAssigneeName% 2CpatAssignorName% 2CinventionTitleFirst% 2CapplNumFirst% 2CpublNumFirst% 2CpatNumFirst% 2CintlRegNumFirst% 2CcorrName% 2CcorrAddress1% 2CcorrAddress2% 2CcorrAddress3% 2CpatAssignorEarliestExDate% 2CfilingDateFirst% 2CpublDateFirst% 2CissueDateFirst% 2CintlPublDateFirst% 2CpatNumSize & hl.fl = reelNo% 2CframeNo% 2CpatAssigneeName% 2CpatAssignorName% 2CconveyanceText% 2CinventionTitleFirst% 2CapplNumFirst% 2CpublNumFirst% 2CpatNumFirst% 2CintlRegNumFirst% 2CcorrName% 2CcorrAddress1% 2CcorrAddress2% 2CcorrAddress3 & hl.requireFieldMatch = истина & рода = patAssignorEarliestExDate + убывание% 2C + ID + убывание

Это удалось получить, просмотрев вкладку «Сеть» в инструменте разработчика Chrome, и вы можете получить содержимое этого URL- HttpConnection с помощью HttpConnection . Пример можно найти здесь . После получения JSON файла вы можете проанализировать его, чтобы получить необходимую информацию.