当前位置:  开发笔记 > 编程语言 > 正文

Python urllib2响应头

如何解决《Pythonurllib2响应头》经验,为你挑选了2个好方法。

我正在尝试提取URL请求的响应头.当我使用firebug分析URL请求的响应输出时,它返回:

Content-Type text/html

但是当我使用python代码时:

urllib2.urlopen(URL).info()

结果输出返回:

Content-Type: video/x-flv

我是python的新手,也是Web编程的新手; 非常感谢任何有用的见解.另外,如果需要更多信息,请告诉我.

提前感谢阅读这篇文章



1> qingbo..:

尝试像Firefox一样请求.您可以在Firebug中看到请求标头,因此将它们添加到您的请求对象中:

import urllib2

request = urllib2.Request('http://your.tld/...')
request.add_header('User-Agent', 'some fake agent string')
request.add_header('Referer', 'fake referrer')
...
response = urllib2.urlopen(request)
# check content type:
print response.info().getheader('Content-Type')

还有HTTPCookieProcessor可以使它更好,但我认为在大多数情况下你不需要它.看看python的文档:

http://docs.python.org/library/urllib2.html


对于Python 3:`response.info()["content-type"]`

2> bobince..:

内容类型文本/ html

真的,没有结肠吗?

如果是这样,那可能会解释它:它是一个无效的头,所以它被忽略,所以urllib通过查看文件名来猜测内容类型.如果URL恰好在末尾有".flv",那么它应该猜测类型video/x-flv.

推荐阅读
凹凸曼00威威_694
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有