python执行requests请求数据出现ascii编码问题

博客探讨了Python处理ASCII编码和UTF-8编码时遇到的乱码问题。通过使用`encode('raw_unicode_escape')`和`decode()`方法,可以成功解决从网页获取内容时的编码转换问题。
摘要由CSDN通过智能技术生成

废话不多说,直接开讲

'稳宒编码问题

最近用python获取网页内容
竟然出现这个
其实是站长故意设置ascii编码
print(‘实际上也就是ascii编码:’,ascii(‘稳宒))

#coding=utf-8
1.1ascii,用1个字节表示。
1.2、UTF-8,1个至三个字节表示,表示ascii码时只占用1个字节,ascii编码是UTF-8的子集。
最早出现的“密码本”美国人发明叫做ASCII,
ascii只能表示数字、英文字母和一些特殊符号,不能表示汉字
unicode和utf-8都可以表示汉字,unicode是固定长度,utf-8是可变长度
内存中存储方式一般为unicode,而磁盘文件存储方式一般为utf-8,因为utf-8可以节约存储空间

直接解决问题

可使用encode('raw_unicode_escape')将此str转化为bytes, 再decode为str

# -*- coding:utf-8 -*-
import base64
from importlib import reload
from xml import etree

import requests
import sys
reload(sys)


url = 'http://caibaojian.com/fw/87286.html'

headers = {
    'User-Agent':'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.198 Safari/537.36'
}
da = requests.get(url,headers=headers).text
# print(da)

ss = da.encode('raw_unicode_escape') #强制转化unicode编码,将此str转化为bytes
sss = ss.decode() #解码
print(sss)

乱码问题解决了
在这里插入图片描述
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值