有没有哪种语言特别适合网络爬虫?

7 投票
4 回答
2469 浏览
提问于 2025-04-16 02:41

我用过三种语言来做网页抓取——Ruby、PHP和Python,老实说,没有一种语言完全适合这个任务。

Ruby有一个很棒的mechanize库和XML解析库,但它对电子表格的支持非常差。

PHP在电子表格和HTML解析方面表现很好,但没有类似于WWW:Mechanize的库。

Python的Mechanize库也很差,我遇到了很多问题,至今还没解决。它的电子表格库也就那样,基本上不能创建XLSX文件。

有没有什么东西是特别适合网页抓取的呢?

PS:我是在Windows平台上工作的。

4 个回答

1

为什么不直接使用XML电子表格格式呢?这个格式非常简单,创建起来也很容易,使用任何基于类的系统都能轻松搞定。

另外,对于Python,你有没有试过BeautifulSoup来解析数据?把Urllib和BeautifulSoup结合起来使用,效果会非常强大。

1

简单来说,答案是否定的。

问题在于,HTML有很多种格式,而只有较新的版本比较一致(而且是基于XML的)。如果你打算使用PHP,我建议你使用DOM解析器,因为它可以处理很多不符合良好格式的HTML。

从你的帖子中可以看出,你似乎在做:

1) 从网上抓取内容,并需要复杂的交互管理

2) 将数据解析成一致的机器可读格式

3) 把数据写入电子表格

这确实是三个不同的问题。如果没有一种语言能满足这三个要求,那为什么不使用最合适的工具来解决每个问题呢?只需考虑一个合适的中间格式或媒介来处理数据就可以了。

C.

2

可以看看Python和Scrapy,这个组合挺不错的:

http://scrapy.org/

撰写回答