Какой общий подход я могу использовать для анализа содержимого веб-сайта? - PullRequest
1 голос
/ 14 марта 2012

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

Ответы [ 3 ]

1 голос
/ 14 марта 2012

Для анализа динамического контента вы можете увидеть исходный код javascript и получить тот же контент так же, как его получает веб-страница.(т. е. репликация вызовов ajax и т. д.)

Если вы хотите отправить данные (а не щелкать по элементам), как если бы они были нажаты / отредактированы / выбраны, вы также можете отправить запрос, содержащий те же данные, что исервер ожидает, используя некоторую библиотеку HTTP, такую ​​как CURL .См. пример здесь .

1 голос
/ 14 марта 2012

Если вам нужно обработать контент, сгенерированный скриптом, то ваша первая проблема - заставить скрипт работать.Далее, скрипт захочет сгенерировать контент в DOM.Это означает, что вам нужно иметь DOM и механизм сценариев и, возможно, HTTP-доступ к Интернету, обработку XML и т. Д.

Если это звучит очень похоже на веб-браузер,затем вы слушаете.

В основном вам нужен веб-браузер, которым вы можете управлять из программы.Вам нужно будет указать ему, чтобы он просматривал страницу, нажимал кнопки и ссылки и т. Д., А затем вам нужно было прочитать полученное DOM.

Только , затем Вам нужно будет проанализировать страницу.

Если вы находитесь в мире Microsoft, тогда вы можете использовать элемент управления WebBrowser.Существует несколько форм этого, и все они равны: вы можете запускать Internet Explorer внутри вашей программы, и ваша программа может управлять им.

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

1 голос
/ 14 марта 2012

Вы можете написать инструмент для очистки веб-страниц на Perl или Python. Или вы можете использовать существующие инструменты и платформы для достижения этой цели.

Проверьте Scrapy , инструмент с открытым исходным кодом, написанный на Python.

Взгляните также на Селен .

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