将字节内容转换为Unicode的工具。
项目描述
Unicodec软件包文档
此软件包提供以下功能:
- 将HTML文档的字节内容解码为Unicode文本
- 检测HTML文档字节内容的编码
- 根据WHATWG HTML标准将编码名称归一化到规范形式
欢迎在Telegram群组中提供反馈:@grablab 和 @grablab_ru。
安装
pip install -U unicodec
用法示例 #1
使用urllib下载网络文档并将其内容转换为Unicode。
from urllib.request import urlopen
from unicodec import decode_content, detect_content_encoding
res = urlopen("http://lib.ru")
rawdata = res.read()
data = decode_content(rawdata, content_type_header=res.headers["content-type"])
print(data[:70])
print(detect_content_encoding(rawdata, res.headers["content-type"]))
输出
<html><head><title>Lib.Ru: Библиотека Максима Мошкова</title></head><b
koi8-r
用法示例 #2
使用urllib3下载网络文档并将其内容转换为Unicode。
from urllib3 import PoolManager
from unicodec import decode_content, detect_content_encoding
res = PoolManager().urlopen("GET", "http://lib.ru")
rawdata = res.data
data = decode_content(rawdata, content_type_header=res.headers["content-type"])
print(data[:70])
print(detect_content_encoding(rawdata, res.headers["content-type"]))
输出
<html><head><title>Lib.Ru: Библиотека Максима Мошкова</title></head><b
koi8-r
用法示例 #3
将编码名称转换为规范形式(根据WHATWG HTML标准)。
from unicodec.normalization import normalize_encoding_name
for name in ["iso8859-1", "utf8", "cp1251"]:
print("{} -> {}".format(name, normalize_encoding_name(name)))
输出
iso8859-1 -> windows-1252
utf8 -> utf-8
cp1251 -> windows-1251