2作者: jlarks322 天前原帖
是的,我也讨厌这个名字,但我不打算为 odyssey.app 付费。 这是一个开源项目,所以请随意探索或分叉。关于这个项目我在营销网站上有更多的介绍,但我们几个人在过去一个月里一直在使用它,感觉挺有趣的。显然,这会带来一堆问题、反馈和小瑕疵,但这就是生活。GitHub 地址在这里: [https://github.com/johnlarkin1/odozi](https://github.com/johnlarkin1/odozi)
3作者: ayas_behera2 天前原帖
问题<p>我使用BeautifulSoup已经有一段时间了。它在Python爬虫中以易用性著称,但在处理大规模数据集时几乎总是成为性能瓶颈。<p>在Python中解析复杂或庞大的HTML树通常会遭遇高内存分配成本以及在树遍历过程中Python对象模型的开销。在我的生产爬虫工作负载中,解析器消耗的CPU周期甚至超过了网络I/O。Lxml虽然速度快,但在处理大文档时同样会消耗大量内存,并且可能会在处理格式不正确的HTML时出现问题。<p>解决方案<p>我希望保留使BS4出色的API兼容性,同时消除减慢高流量管道的开销。它还使用了html5ever,这就是我构建WhiskeySour的原因。没错……我*全程都是凭感觉编码的*。<p>WhiskeySour是一个可直接替换的库。你应该能够将“bs4 import BeautifulSoup”替换为“from whiskeysour import WhiskeySour”,并立即看到速度的提升。以前需要超过30分钟的工作流程现在可能只需不到5分钟。<p>我在这里分享了该库的详细架构: <a href="https://the-pro.github.io/whiskeySour/architecture/" rel="nofollow">https://the-pro.github.io/whiskeySour/architecture/</a><p>这是与bs4和html.parser的基准报告:<a href="https://the-pro.github.io/whiskeySour/bench-report/" rel="nofollow">https://the-pro.github.io/whiskeySour/bench-report/</a><p>这是仓库的链接:<a href="https://github.com/the-pro/WhiskeySour" rel="nofollow">https://github.com/the-pro/WhiskeySour</a><p>我分享这个的原因<p>我希望从社区获得两个方面的反馈:<p>1. 边缘案例:如果你有特别混乱或格式不正确的HTML,而BS4处理得很好,我想知道WhiskeySour是否会遇到任何回归问题。<p>2. 基准测试:如果你正在运行高流量的解析器,我将非常感激你能在自己的数据集上进行测试并分享结果。