【发布时间】:2013-02-01 01:20:46
【问题描述】:
我是一名初级程序员,正在设计一个抓取页面的蜘蛛。逻辑是这样的:
- 使用 curl 获取 $url
- 创建dom文档
- 使用xpath解析href标签
- 在 $totalurls 中存储 href 属性(尚未存在)
- 从 $totalurls 更新 $url
问题是,在第 10 个爬取页面之后,蜘蛛说它在页面上没有找到任何链接,在下一个页面上没有任何链接,等等。
但如果我从前面示例中的第 10 个页面开始,它会发现所有链接都没有问题,但在爬取 10 个 url 后再次中断。
知道是什么原因造成的吗?我的猜测是 domdocument,也许我不是 100% 熟悉它。或者存储太多数据会导致麻烦?这可能是一些真正的初学者问题,因为我是全新的 - 而且一无所知。请给我一些建议在哪里寻找问题
【问题讨论】:
-
显示一些代码将帮助您获得更好的答案。
-
任何数量的事情都可能导致这种情况,但我要检查的一件事是您是否在关注重定向。
-
它可能已达到超时限制。如果没有,请尝试检查您的错误日志/打开它们。
-
我假设@Class 是正确的,这里的主要瓶颈肯定是 curl,而不是 domdocument。为了加快速度,您可能需要查看 curl_multi_exec 并延长 PHP 脚本的最大超时时间。
标签: php curl xpath domdocument web-crawler