【问题标题】:Create a Conection TimeOut using urllib2.urlOpen()使用 urllib2.urlOpen() 创建连接超时
【发布时间】:2019-03-11 13:51:49
【问题描述】:

我想使用 urlopen 创建一个连接超时异常。

尝试: urllib2.urlopen("http://example.com", 超时 = 5) 除了 urllib2.URLError,e: raise MyException("出现错误:%r" % e)

这是代码

我想创建一个超时,这个代码会带来异常。

提前谢谢你。

【问题讨论】:

标签: python connection-timeout urlopen


【解决方案1】:

您需要捕获 socket.timeout 异常,请查看以下示例。

import urllib2
import socket

class MyException(Exception):
    pass

try:
    urllib2.urlopen("http://example.com", timeout = 1)
except socket.timeout, e:
    # For Python 2.7
    raise MyException("There was an error: %r" % e)

我强烈建议使用Requests 库来发出请求,它会让您的生活更轻松。

【讨论】:

  • 看到事情是我想超时..请求的状态是 200 OK。我想暂停一个连接,以便它创建一个超时异常。
  • 这是一个不寻常的情况。也许你可以自己提出超时异常。创建一个自定义超时异常(例如在我的示例 MyExcepton 中),然后在 urlopen 之后引发它。我认为没有“保持”连接的选项。
  • 好的,谢谢您的回复。我知道我问这个问题有点愚蠢......哈哈
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-11-24
  • 1970-01-01
  • 2012-03-07
  • 1970-01-01
  • 2013-04-07
  • 1970-01-01
相关资源
最近更新 更多