这是脚本的精简版本,导致内存使用量不断增加,我看到它在 2 分钟后超过 600MB:
import requests
import grequests
lines = (grequests.get(l.strip(), timeout=15) for l in open('links.txt') if len(l.strip()))
for r in grequests.imap(lines, size=20):
if r.ok:
print r.url
links.txt 是一个包含大量 url 的文件,问题发生在我收集的几组大的 url 上。在我看来,响应对象可能没有受到尊重?
我今天更新了 gevent、requests 和 grequests,以下是它们的版本:
In [2]: gevent.version_info
Out[2]: (1, 0, 0, 'beta', 3)
In [5]: requests.__version__
Out[5]: '0.13.5'
grequests 没有我能找到的版本号。
提前感谢您的任何答案。