我在这里有这个代码
site = urllib.request.urlopen('http://omegle.com/start')
id = fmtId( site.read() )
print(id)
req = urllib.request.urlretrieve('http://omegle.com/events', urllib.parse.urlencode( {'id':id}))
print('finding')
这个
site = urllib.request.urlopen(req)
rec = site.read()
我收到这个错误
File "C:Users...script.py", line 74, in <module>
omegleConnect()
File "C:Users...script.py", line 70, in omegleConnect
listenServer(id,req)
File "C:Users...script.py", line 32, in listenServer
site = urllib.request.urlopen(req)
File "C:Python33liburllibrequest.py", line 156, in urlopen
return opener.open(url, data, timeout)
File "C:Python33liburllibrequest.py", line 460, in open
req.timeout = timeout
AttributeError: 'tuple' object has no attribute 'timeout'
我对python完全没有经验,所以如果你愿意,请简单地向我解释。实际上,我不知道我的代码现在出了什么问题。如果您需要我的代码中的其他内容或更多详细信息,请询问。
对urlopen的第二次调用是给它一个元组,这是一个类似的不可变列表
(1, 2, 3)
它没有属性,并且代码正试图访问该元组上的"超时"属性。您的意思很可能是向urlopen发送req对象内部的url,而不是完整的元组。如果您刚开始使用Python(即使不是(,您可能希望在http://docs.python-requests.org/en/latest/它非常易于使用并且有很好的文档记录。
import urllib
site = urllib.urlopen('http://omegle.com/start')
id_ = site.read()
print(id_)
你能试试这个密码吗。当我尝试运行这些代码时,它们正在工作。我想urllib并没有类似属性的请求。