Гусеничный питон. Разбор и выполнение ajax - PullRequest
2 голосов
/ 25 января 2012

У меня есть базовая структура для сканера.Теперь я выпустил его на некоторых php-сайтах, и он работает как шарм.Хотя сейчас я хочу, чтобы он строил таблицы данных из контента ajax.

В настоящее время я использую Mechanize для PYTHON и perl для сборки своего сканера.Хотя модуль Mechanize не выполняет AJAX.Как мне добраться до контента, созданного с помощью асинхронного AJAX?

Я знаю, что есть что-то под названием Selenium, настоящий браузер для автоматизации.Но это мой единственный вариант?

1 Ответ

1 голос
/ 25 января 2012

Вы можете запустить безголовый браузер, например, phantomjs , который понимает JavaScript, DOM и т. Д., Но вам придется писать свой код на Javascript, преимущество в том, что вы можете делать все, что захотите.

Есть и другой способ, кроме messy.

. Вы можете наблюдать, какие запросы делаются, когда вы нажимаете кнопку (используя Firebug в Firefox или Инструменты разработчика в Chrome).Затем попытайтесь выполнить обратный инжиниринг javascript, работающего за страницей, и попытайтесь сделать то же самое, используя ваш код на python, для этого взгляните на Spidermonkey

...