编写爬取论坛的程序

3 投票
2 回答
2111 浏览
提问于 2025-04-15 23:35

我需要写一个程序来抓取论坛上的内容。

我应该用Python和Scrapy框架来写这个程序,还是用Php的cURL呢?另外,Php有没有类似Scrapy的工具呢?

谢谢!

2 个回答

3

我不会用PHP来写我正在开发的新应用程序。因为我对这个语言有很多不喜欢的地方。

另外,PHP的强项在于作为一种服务器端脚本语言,用来在网上提供动态网页,而不是作为一种通用的编程语言。这也是一个缺点。所以我更倾向于使用Python。

至于用哪个框架,有很多选择,比如Harvestman、Scrapy等等。还有一个叫80legs的云爬虫,你也许可以用它。

更新:很多人给这个回答点了反对票,可能是因为我说我不喜欢PHP。这里有一些我不喜欢的原因。虽然不完全准确,但还是一个不错的总结 http://wiki.python.org/moin/PythonVsPhp

4

我会选择Python,因为它对libxml2的支持非常好,特别是像lxml.htmlpyQuery这样的库。Scrapy也有自己的libxml2支持,不过我没有去测试过,简单浏览了一下Scrapy的文档,感觉并没有特别吸引我(我之前用这些解析器和手动编码做过很多抓取工作)。使用这些工具,你可以获得一个非常强大的HTML解析器,可以通过XPath进行查询,而lxml.html和pyquery(也是基于lxml的)还支持CSS选择器。

如果你只是想抓取一个论坛的小数据,我建议你直接手动操作,不用使用抓取框架——这样做简单得多,而且并不需要并行处理等复杂功能。

撰写回答