简单的网络爬虫速度问题

时间:2015-04-20 08:46:22

标签: php web-crawler

我在PHP中创建了一个非常简单的网络爬虫,我在其中抓取一些足球网站以获得匹配结果。

但是当我抓取一个网站时,需要大约0.5 - 1秒来抓取它。因此,如果我有很多网址需要抓取,则需要花费很多时间。

这是我抓取网站的代码开始:

$doc = new DOMDocument();
$doc->loadHTMLFile("http://resultater.dai-sport.dk/tms/Turneringer-og-resultater/Pulje-Stilling.aspx?PuljeId=229");
$xpath = new DOMXpath($doc);

我自己创建了爬虫,所以也许有更好的方法可以做到这一点或更快捷的方式?或者也许我对速度的期望很高?

2 个答案:

答案 0 :(得分:1)

请检查此lib以获取爬虫的异步实现。它使用“yield”,出现在PHP 5.5中:https://github.com/icicleio/Icicle

您将在库示例中找到用法示例。

答案 1 :(得分:0)

如果你不打算使用任何就绪模块,你做的方式很好,只需确保解析一次网址。 这是一个较旧帖子的示例: How do I make a simple crawler in PHP?

如果您决定测试准备好的模块,请参考http://phpcrawl.cuab.de/ 这是一个非常好的选择