使用Python请求库检查二进制内容

时间:2014-03-15 22:05:30

标签: python python-requests

查看requests documentation,我知道我可以将response.content用于常规html页面的二进制内容(例如.jpg文件)和response.text。但是,当源是图像,并且我尝试访问r.text时,脚本会挂起。如何提前确定响应是否包含html?

我考虑过检查网址是否有图片扩展名,但这似乎不是万无一失。

1 个答案:

答案 0 :(得分:4)

内容类型应为标题。请参阅文档中的this页面。

示例代码:

r = requests.get(url)
if r.headers['content-type'] == 'text/html':
    data = r.text
elif r.headers['content-type'] == 'application/ogg':
    data = r.content