Получение HTML с веб-страниц, которые используют AJAX - PullRequest
5 голосов
/ 08 февраля 2010

Я хотел знать, как очищать веб-страницы, использующие AJAX, для извлечения контента на отображаемой веб-странице. Обычно HTTP GET для таких страниц просто извлекает HTML-страницу со встроенным в нее кодом JavaScript. Но я хочу знать, можно ли программно (предпочтительно Java) запрашивать такие страницы и имитировать запрос типа веб-браузера, чтобы получить HTML-контент, полученный после вызовов AJAX.

Ответы [ 3 ]

3 голосов
/ 08 февраля 2010

In Продуктивный программист Автор Нил Форд предполагает, что инструмент функционального тестирования Selenium можно использовать для задач, не связанных с тестированием. Ваша задача проверки HTML после манипуляций с DOM на стороне клиента относится к этой категории. Selenium даже позволяет автоматизировать взаимодействие с браузером, поэтому, если вам нужно нажать несколько кнопок для запуска некоторых событий AJAX, вы можете написать его. Selenium работает, используя плагин для браузера и сервер на базе Java. Тестовый код Selenium (или не тестовый код в вашем случае) может быть написан на нескольких языках, включая Java, C # и другие языки .Net, php, perl, python и ruby.

2 голосов
/ 08 февраля 2010

Вы можете посмотреть на htmlunit

0 голосов
/ 19 февраля 2010

Зачем выбирать, когда вы можете иметь оба? TestPlan поддерживает как Selenium, так и HTMLUnit в качестве бэкэнда.Кроме того, он имеет действительно простой язык для выполнения наиболее распространенных задач (при необходимости расширения могут быть написаны на Java - что на самом деле редко)

...