手机版
贴心博客(Imblog)(LOGO)

贴心博客(Imblog)

v5.0

基于`jquery2+bootstrap4+贴心猫`开发

Python模块Requests的中文乱码问题

发布:2019-09-06 08:02   点击:14次   评论:0

Python模块Requests的中文乱码问题

终极解决方法
以上的方法虽然不会出现乱码,但是保存下来的网页,图片不显示,只显示文本。而且打开速度慢,找到了一篇博客,提出了一个终极方法,非常棒。

来自博客 
http://blog.chinaunix.net/uid-13869856-id-5747417.html的解决方案:

def page(url, head={}, proxy={}):
    agent = {"User-Agent": "Mozilla/5.0 (Window 7) Chrome/72.0"}
    if head:
        head = dict(agent, **head)
    r = requests.get(url)
    if r.encoding == 'ISO-8859-1':
        encodes = requests.utils.get_encodings_from_content(r.text)
        if encodes:
            encode = encodes[0]
        else:
            encode = r.apparent_encoding
        html = r.content.decode(encode, 'replace') #如果设置为replace,则会用?取代非法字符;
        return html;
        '''
        c = re.search(r'charset=["\']?([^\'"]*)', r.text)
        if c:
            r.encoding = c.group(1)
        '''
    html = r.text
    return html


评论(0条) 评论列表
 

公司简介 企业文化 服务内容 公司新闻 公司图片 常见问题 联系我们 责权申明

贴心博客(Imblog)基于`jquery2+bootstrap4+贴心猫`开发; QQ群:607070548; 粤ICP备07020797号

Run:1.953/26.368(ms); 3(sql)/2.012(MB); comm:info/detail; Upd:2019-09-21 09:34:19