我使用Windows上的Python构建了一个有关越南餐厅的问答应用程序。为了编写越南字符,我需要使用Unicode。
首先,我从使用HTML charset=utf-8的TripAdvisor网站克隆数据并构建了我的Mongo数据库。 TripAdvisor中名为“đà nẵng”的城市有一个代码:
>>> print repr("đà nẵng") # from tripadvisor website
>>> '\xc4\x91a\xcc\x80 n\xc4\x83\xcc\x83ng'
然而,当我从Firefox的地址栏查询时,城市“đà nẵng”的代码不同:
>>> print repr("đà nẵng") # Firefox's address bar
>>> '\xc4\x91\xc3\xa0 n\xe1\xba\xb5ng'
这就是我在数据库中找不到那个城市的原因。我试着在Notepad++上写下这个城市的名称,结果跟在Firefox地址栏里输入一样。
>>> print repr("đà nẵng") # notepad++ using 'Encoding UTF-8'
>>> '\xc4\x91\xc3\xa0 n\xe1\xba\xb5ng'
有没有办法在两种编码之间进行转换?
或者在这种情况下,有没有办法将城市名称“đà nẵng”与不同的编码匹配?