2011-11-07 69 views
4

我需要做一个网络爬虫从网页提取信息。我做了一个研究,发现Beautiful Soup非常出色,因为我可以解析所有文档并创建dom对象并迭代,提取属性等(对于JQuery来说也是如此)。Python 3.2美丽的汤替代

但我使用的是Python 3.2,并没有稳定的版本(我认为根本没有,只有3.1我在他们的主页看到)。

所以我需要一些不错的选择。

回答

0

lxml主页:

最新版本与2.4所有CPython的版本3.2。

+0

我刚刚阅读的美丽汤3.1系列与Python 3.0的工作,就是这样(没有提到3.2)。而3.x版本使用HTMLParser,因为SGMLParser(这好得多)被删除了:/。没有作者的支持。 – Jirico

+0

@Jirico:这就是为什么我建议使用lxml。 –

+0

lxml看起来不像美丽的汤那么热,但我会给它一看。谢谢!嗯,我认为我会得到Python 2.7我会有更多的第三方支持... – Jirico

3

在我看来,有一个版本的3.2.0美丽的汤的版本发布差不多一年前。还有的HTMLParser http://docs.python.org/library/htmlparser.html

+0

我只是试过美丽的汤3.2.0。该设置给我的语句错误:print“单元测试失败!”。这是来自2.x的旧版印刷声明,如何告诉我3.2版可以吗? – Jirico

+0

就像他们问的那样,向[BS支持组](http://groups.google.com/group/beautifulsoup)报告错误(带回溯)。他们是非常有帮助的,给他们一个机会来解决它之前,你开始张贴在这里,它不起作用。 (除非[this](http://groups.google.com/group/beautifulsoup/browse_thread/thread/6c13e079839306ca/a3c2209e3d90f45d?lnk=gst&q=3.2+unittest#a3c2209e3d90f45d)已经在报告中) – smci

1

我认为,最新的版本是4.1.1,你可以在这里读到它BS4 Documentation

我已经在我的网站上使用BS4与PHP为此,有一段时间了,很大的成绩。由于PHP/Python不兼容问题,我不得不切换到BSv3,但这与BS4脚本本身的工作性能是分开的。

最初我使用内置的HTML分析引擎,但发现这很慢。在我的Web服务器上安装LMXL引擎后,速度大幅提升!在实际解析中没有明显的改进,但速度急剧增加。

我给它一个去 - 我推荐它,我尝试了很多不同的选择,然后我决定美丽的汤。

祝你好运!