当前位置:
首页 >
遇到的编码问题
发布时间:2023/12/20
38
豆豆
# 把一个字符串变成 Unicode 码位的列表 >>> symbols = '$¢£¥€¤' >>> codes = [ord(symbol) for symbol in symbols] >>> codes [36, 162, 163, 165, 8364, 164] #`编码自动检测`_ 功能可以在Beautiful Soup以外使用,检测某段未知编码时,可以使用这个方法:from bs4 import UnicodeDammit dammit = UnicodeDammit("Sacr\xc3\xa9 bleu!") print(dammit.unicode_markup) # Sacré bleu! dammit.original_encoding # 'utf-8' # body = response.body.decode('utf-8', 'ignore')response = requests.get(url,headers=headers) response.encoding = 'gbk' res = response.text print(res)
解码 unicode 网页编码
# 输出的文件是Unicode # \u6d77\u5c14\u7535\u5668\u62df\u79c1\u6709\u5316转为中文 r = requests.get(url).content.decode("unicode-escape") a = r.encode('utf8').decode('utf8') import htmla = 'zoneAliasName:"英德西法意阿土站-YQ", ' print(html.unescape(a)) # r = requests.get(url, headers=head) r.encoding = r.apparent_encoding content = r.text
1366, "Incorrect string value: '\\xF0\\x9F\\x91\\x87\\xF0\\x9F'
因为mysql不能识别4个字节的utf8编码的字符,抛出了异常,或者内容中出现了特殊表情字符,这应该也是问题的根源。、��、类似于这种4个字节,将对应字符类型换成将对应的数据类型改为utf8mb4类型,同时连接类型也要改成utf8mb4_general_ci。
python连接数据库代码也要修改 charset 为 utf8mb4
python 代码形式(3.6)
conn=pymysql.connect(
host=’127.0.0.1’,
port=3306,
user=’root’,
passwd=’343434’,
db=’kmind8’,
charset=’utf8mb4’,
)
总结
- 上一篇: 最新的 iOS 申请证书与发布流程 20
- 下一篇: 机器视觉光源的分类及各种光源的特点