Python: Data Manipulation: XML/HTML Manipulation

onlyice 7th March 2019 at 9:02am

对于 XML/HTML 数据的处理,比较常用的库是 BeautifulSoup4lxml 等。

bs4 的 API 比较好用,而且它很流行,库的品质应该不错。但是我遇到过它的 UnicodeDammit 模块比较耗时的情况。当你创建一个 soup 对象时,bs4 会拿你的文本用 UnicodeDammit 判断编码,这个过程比较耗时。你可以考虑传入 from_encoding 参数。

lxml 是构建在 libxml2libxslt 之上的 Python Binding,据说性能非常好,代码质量也不错。