Scrapy可以在PHP上运行吗?

时间:2014-01-20 13:55:53

标签: php web-scraping scrapy bookmarklet

我可以在PHP上使用Scrapy,还是有与PHP一起使用的类似工具?

我不是技术人员,只是研究可用的网络抓取工具及其功能,以支持我的技术同事。

3 个答案:

答案 0 :(得分:4)

Scrapy适用于python,你不能在PHP中使用它。

但是,在PHP中,您可以使用Goutte来完成这项工作。它在幕后使用Guzzle HTTP 和Symfony组件(如BrowserKit和DomCrawler来完成这项工作。

检查出来:

use Goutte\Client;

$client = new Client();

// Go to the symfony.com website
$crawler = $client->request('GET', 'http://www.symfony.com/blog/');

// Get the latest post in this category and display the titles
$crawler->filter('h2 > a')->each(function ($node) {
    echo $node->text().'\n';
});

More on usage

PS:请注意它不会执行JavaScript。

答案 1 :(得分:1)

答案 2 :(得分:0)

你不能用PHP编写Scrapy蜘蛛。

然而,通常使用Scrapy(在Python中编写蜘蛛)并将提取的数据存储在数据库或应用程序可访问的内容中。例如,将提取的项目直接存储到ElasticSearch并使您的应用程序查询ES来搜索/过滤/聚合数据相当容易。

但是,如果你的同事不懂Python,他们需要花一些时间学习语言,然后学习Scrapy框架。