По мне, так парсеры прекрасно пишутся в связке с php.
Я phantomjs использую для исполнения js кода на страницах, которые что-то генерирую динамически. Получается вполне универсальная вещь, которая и картинки умеет загружать и любую информацию доставать, даже под авторизацией. Пример вызова из php: echo shell_exec('/usr/bin/phantomjs /phantom.js http://market.yandex.ru/model.xml?modelid=8230052&hid=90594''); Пример phantom.js: "use strict"; var page = require('webpage').create(), system = require('system'), url = system.args[1]; page.open(url, function(status) { if (status === "success") { page.includeJs("http://ajax.googleapis.com/ajax/libs/jquery/1.6.1/jquery.min.js", function() { page.evaluate(function() { console.log($('h1').html()); }); phantom.exit(0); }); } else { phantom.exit(1); } }); Далее, php часть можно вставлять в любое место php парсера и тем же phpQuery разбирать полученный кусок html. Разве что для таких взятых phantomjs страниц надо отдельно авторизацию проходить, и тут, похоже, без casperjs не обойтись. Да, по моему опыту, скорость таких парсеров напрямую зависит от скорости соединения между хостингом парсера и хостингом целевого сайта, от веса страниц, от кол-ва и веса картинок, от нагруженности удаленного сайта (от того, насколько быстро он страницы отдает). Львиная доля времени уходит именно на это. |
Часовой пояс GMT +3, время: 05:30. |