Python中的字符串解码为日文字符

2024-05-28 11:17:36 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在通过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)

Tags: httpsreportidamazondataresponse报告line
1条回答
网友
1楼 · 发布于 2024-05-28 11:17:36

对于python 2:

>>> a = 'ライトニングvtz-1843_MG'
>>> from HTMLParser import HTMLParser
>>> HTMLParser().unescape( a )
u'\u30e9\u30a4\u30c8\u30cb\u30f3\u30b0vtz-1843_MG'
>>> print HTMLParser().unescape( a )
ライトニングvtz-1843_MG

对于python 3:

>>> a = 'ライトニングvtz-1843_MG'
>>> import html
>>> html.unescape( a )
'ライトニングvtz-1843_MG'

也许python的版本并不精确,但是我无法在python2中import html,所以它可能在某个点上发生了变化,不确定在哪里。但在您的情况下,其中一种方法应该是有效的(如果您幸运的话,也可以同时使用这两种方法)

相关问题 更多 >