Веб-браузер командной строки, который выводит DOM - PullRequest
2 голосов
/ 30 июля 2009

Я ищу способ обработки веб-страницы и связанного Javascript из командной строки, чтобы можно было вывести полученную модель DOM.

Цель этого состоит в том, чтобы идентифицировать формы на странице без всякого неприятного анализа HTML (и Javascript) с помощью регулярных выражений.

Существуют ли инструменты командной строки, которые это сделают? Говоря гипотетически, веб-браузер командной строки, который загружает контент и выводит DOM в виде текста, а не создает симпатичную страницу.

Ответы [ 3 ]

2 голосов
/ 30 июля 2009

Для Java у меня был довольно хороший опыт работы с htmlunit .

Я также использовал библиотеку Python BeautifulSoup для анализа форм и данных. Нет необходимости указывать регулярные выражения, поскольку это позволит вам без особых усилий обходить дерево DOM.

2 голосов
/ 30 июля 2009

Я не знаю ни одного, но я хотел бы выделить одну трудность из того, что вы предложили:

обработка веб-страницы и связанного Javascript

Когда будет выход? Многие веб-страницы имеют чувствительные ко времени javascripts или onclick / onhover скрипты, которые могут повлиять на DOM. Вы хотели бы, чтобы они были выполнены? Все они или только некоторые? Нетрудно определить, когда страница «готова» и готова к выводу DOM после манипуляции JavaScript . (Перед манипуляциями с javascript это более простая проблема; просто дождитесь события document.DOMReady ...)

Редактировать: я не говорю, что вам вообще не нужно выполнение javascript: вы можете захотеть обрабатывать любые разделы document.write во время загрузки, так как они могут выписать форму ... Я говорю, что это сложно чтобы знать, когда вы сделали «достаточно» JavaScript ...

1 голос
/ 30 июля 2009

PyKHTML"обрабатывает JavaScript" и позволяет вам проходить через DOM.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...