【发布时间】:2020-01-15 02:28:42
【问题描述】:
我正在通过https://github.com/python-amazon-mws/python-amazon-mws 从 MWS 亚马逊获取一份报告。但是该报告在从日本市场获取报告时出现问题,我有一些 SKU 具有日文字符,当我获取和过滤时,我会得到类似的 SKU
ライトニングvtz-1843_MG
代替
ライトニングvtz-1843_MG
我认为我在编码/解码方面做错了,请帮忙。
report_data = reportsApi.get_report(report_id=report_id)
response = report_data.original
lines = response.decode("utf-8", "ignore").split("\n")
for line in lines:
report_data = str(line).split("\t")
sku = report_data[0].strip()
print(sku)
【问题讨论】:
-
这两个字符串看起来一样。日语字符看起来很好。因此,自 90 年代后期以来,几乎所有网站都使用 UTF8,而且日文文本看起来还不错。有什么问题,为什么你认为你需要解码任何东西?如果您在数据库中搜索时遇到问题,则可能是 database 文本被损坏或使用错误编码存储
-
这些是您需要进行 HTML 解码的 HTML 实体...
-
如果您始终使用 Unicode,您不必担心语言(在某种程度上)。像 Αυτό Εδώ 这样的日语和希腊语文本在 SO 中看起来都很好的原因是它建立在 .NET 上,其字符串是 Unicode,将数据存储在 nvarchar 字段(即 Unicode)中并将文本返回为 UTF8
-
好的,在编辑之后很明显这些是 HTML 实体而不是 UTF8 编码的文本。此页面本身表明不需要 HTML 编码
标签: python python-3.x decode encode