python urllib2 urlopen响应
python urllib2 urlopen响应:python urllib2 urlopen响应,python,urllib2,urlopen,Python,Urllib2,Urlopen,python urllib2 urlopen响应: <addinfourl at 1081306700 whose fp = <socket._fileobject object at 0x4073192c>> 预期: {“token”:“mYWmzpunvasAT795niiR”}在调用urlopen print feed.read() 您需要将生成的类似文件的对象绑定到变量,否则解释器只需通过repr转储它: >>> import urlli
<addinfourl at 1081306700 whose fp = <socket._fileobject object at 0x4073192c>>
预期:
{“token”:“mYWmzpunvasAT795niiR”}在调用
urlopen
print feed.read()
您需要将生成的类似文件的对象绑定到变量,否则解释器只需通过
repr
转储它:
>>> import urllib2
>>> urllib2.urlopen('http://www.google.com')
<addinfourl at 18362520 whose fp = <socket._fileobject object at 0x106b250>>
>>>
>>> f = urllib2.urlopen('http://www.google.com')
>>> f
<addinfourl at 18635448 whose fp = <socket._fileobject object at 0x106b950>>
要查看返回的标题,请执行以下操作:
>>> print f.headers
Date: Thu, 23 Aug 2012 00:46:22 GMT
Expires: -1
Cache-Control: private, max-age=0
... etc ...
也许您会发现使用比
urllib2
更直观的方法,我这里有一个问题。如果我不将f
的内容存储到data
,只需执行f.read()
,我只会获取一次内容。如果我再次执行f.read()
,它将打印一个空字符串。为什么会这样?@SidharthSamant:因为您已经使用了流中的所有数据-它不是由urlib2
内部存储的。
>>> print f.headers
Date: Thu, 23 Aug 2012 00:46:22 GMT
Expires: -1
Cache-Control: private, max-age=0
... etc ...