首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用httplib/http.client获取响应编码

使用httplib/http.client获取响应编码
EN

Stack Overflow用户
提问于 2013-04-18 08:52:40
回答 1查看 820关注 0票数 2

如何使用httplib/http.client获取传入响应的编码?

我可以看到使用getheaders()作为Content-Type的一部分,但我猜解析它是不好的做法,因为它可能是几种不同的格式,而您应该在httplib/http.client中使用特定的方法:

代码语言:javascript
复制
>>> r = h.getresponse()
>>> r.getheaders()
[('transfer-encoding', 'chunked'), ('expires', 'Tue, 11 Oct 1988 22:00:00 GMT'), ('vary', 'Accept-Encoding'), ('server', 'nginx/1.2.6'), ('connection', 'keep-alive'), ('pragma', 'no-cache'), ('cache-control', 'no-cache, must-revalidate'), ('date', 'Thu, 18 Apr 2013 00:46:18 GMT'), ('content-type', 'text/html; charset=utf-8')]

获取传入编码的最佳方式是什么?

EN

回答 1

Stack Overflow用户

发布于 2013-04-18 09:56:56

这不是一个直接的答案,但也许你会发现这很有用。使用requests库。

人们停止构建自己的http库是有原因的。事实上,httplib甚至说使用使用http库的urllib。反过来,requests使用urllib3。

代码语言:javascript
复制
>>> import requests
>>> r = requests.get("http://bitbucket.org")
dir>>> dir(r)
['__bool__', '__class__', '__delattr__', '__dict__', '__doc__', '__format__', '__getattribute__', '__hash__', '__init__', '__module__', '__new__', '__nonzero__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', '__weakref__', '_content', '_content_consumed', 'apparent_encoding', 'close', 'connection', 'content', 'cookies', 'encoding', 'headers', 'history', 'iter_content', 'iter_lines', 'json', 'links', 'ok', 'raise_for_status', 'raw', 'reason', 'request', 'status_code', 'text', 'url']
>>> r.encoding
'utf-8'
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16072722

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档