【问题标题】:Python urllib2 ErrorsPython urllib2 错误
【发布时间】:2012-07-30 08:00:21
【问题描述】:

我有一长串需要为我的服务打开的 URL。每当我尝试打开整个列表时,都会在启动程序时收到许多错误,例如:[Errno 24] Too many open files。我正在使用 urllib2 和 gevent。

有人有解决办法吗?

谢谢。

【问题讨论】:

  • 需要显示一些代码。 sscce.org

标签: python python-2.7 urllib2 gevent


【解决方案1】:

使用Gevent.pool 一次只打开一定数量的网址,然后在打开网址后重用这些greenlet。

【讨论】:

  • 谢谢,这解决了问题!
【解决方案2】:

由于我们仍然不知道您到底在做什么,我只能猜测:您同时打开了许多 URL,然后您才尝试阅读它们。相反,您应该/可以打开-读取-关闭它们,然后前进到下一个。

或者,您可以创建一个支持并发的 URL 加载器:打开 一些 url 并尝试同时读取它们。关闭一个后,您可以开始打开下一个。如果您一次将其限制为 5 或 10 个,那么您应该不会再遇到问题了。

【讨论】:

    猜你喜欢
    • 2015-03-04
    • 2016-10-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多