我需要设置超时urllib2.request()。
我不使用urllib2.urlopen(),因为我使用的data是request. 我该如何设置?
虽然urlopen确实接受dataparam for POST,但您可以调用urlopen这样的Request对象,
import urllib2
request = urllib2.Request('http://www.example.com', data)
response = urllib2.urlopen(request, timeout=4)
content = response.read()
不过,您可以避免使用 urlopen 并像这样继续:
request = urllib2.Request('http://example.com')
response = opener.open(request,timeout=4)
response_result = response.read()
这也有效:)
为什么不使用很棒的请求?你会为自己节省很多时间。
如果您担心部署,只需将其复制到您的项目中。
例如。请求数:
>>> requests.post('http://github.com', data={your data here}, timeout=10)