gpt4 book ai didi

python - "Fatal Python error: deallocating None"和 urlgrabber

转载 作者:太空宇宙 更新时间:2023-11-04 06:29:13 29 4
gpt4 key购买 nike

我正在尝试通过 HTTP 从单个站点获取 100 万个以上的页面。 urlgrabber 似乎是使用“保持事件”连接的快速解决方案。然而,过了一会儿我的脚本失败了,没有任何堆栈跟踪:“致命的 Python 错误:取消分配无”

这是失败的隔离 python 代码(为简化起见,使用 file://URL,给出相同的结果):

import urlgrabber

url = "file:///some/existing/file.html"

for i in range(0, 15000):
print i
handle = urlgrabber.urlopen(url, timeout = 1)
# do something useful
handle.close()

它在约 3231 个周期后失败。

我做错了什么?

最佳答案

正如其他人所提到的,当您运行这么多次抓取时,urlgrabber 会出现问题。此外,如果您真的要抓取数十万个 URL,这将非常缓慢。作为替代方案,请考虑使用可信赖的 wget。

当然,你会说你想要一个 Python 解决方案,为此,你绝对应该在 http://scrapy.org/ 查看 Scrapy。 ,这通常被认为是进行这种大规模抓取的最佳方式。

关于python - "Fatal Python error: deallocating None"和 urlgrabber,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4890785/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com