UnicodeDecodeError: 'charmap' codec can't decode byte 0x81 in position 49: character maps to <undefined>
UnicodeDecodeError: 'charmap' codec can't decode byte 0x81 in position 49: character maps to <undefined>
我正在创建一个特定的函数,它可以给我有关 ISS(国际 Space 站)和给定位置(以十进制坐标表示)的信息,这些信息可以根据输入而变化。但是当我使用这个时:
print(ubicacion.raw['address']['country'],",",ubicacion.raw['address']['city'])
它有效,但对于某些国家/地区,例如当我尝试使用坐标堪培拉时,它会显示以下信息:
Corinna Street, Phillip, District of Woden Valley, Australian Capital Territory, 2606, Australia
并且因为它不提供城市,当我使用键 "city"
时,我显然得到了一个错误,因为它不存在于那个列表中。
所以我想到的一个解决方案是,因为至少我总是会得到国家,也许我可以使用另一个功能,基于国家,我可以获得首都,就是那个我需要并且它存在,我使用了 "CountryInfo"
(from countryinfo import CountryInfo
)。问题是,当我尝试使用它时,出现以下错误:
UnicodeDecodeError: 'charmap' codec can't decode byte 0x81 in position 49: character maps to
我已经搜索过类似的问题,很多人建议指定编码,但它似乎不适用于geopy
。因为我试过这个:
countryinfo=CountryInfo(country,encoding="utf8")
我收到了这个错误:
TypeError: init() got an unexpected keyword argument 'encoding'
from countryinfo import CountryInfo
country = CountryInfo('Singapore')
country.capital()
# returns string
'Singapore'
country.capital() 将为您提供字符串格式的资本
引用自:https://python-forum.io/Thread-Countryinfo-package-charmap-error
来自@snippsat 的回答,2018 年 9 月 14 日,11:37 AM
打开 ..Lib\site-packages\countryinfo 文件夹中的 countryinfo.py。
将行更改为:
country_info = json.load(open(file_path, encoding='utf-8'))
对我有用。
我正在创建一个特定的函数,它可以给我有关 ISS(国际 Space 站)和给定位置(以十进制坐标表示)的信息,这些信息可以根据输入而变化。但是当我使用这个时:
print(ubicacion.raw['address']['country'],",",ubicacion.raw['address']['city'])
它有效,但对于某些国家/地区,例如当我尝试使用坐标堪培拉时,它会显示以下信息:
Corinna Street, Phillip, District of Woden Valley, Australian Capital Territory, 2606, Australia
并且因为它不提供城市,当我使用键 "city"
时,我显然得到了一个错误,因为它不存在于那个列表中。
所以我想到的一个解决方案是,因为至少我总是会得到国家,也许我可以使用另一个功能,基于国家,我可以获得首都,就是那个我需要并且它存在,我使用了 "CountryInfo"
(from countryinfo import CountryInfo
)。问题是,当我尝试使用它时,出现以下错误:
UnicodeDecodeError: 'charmap' codec can't decode byte 0x81 in position 49: character maps to
我已经搜索过类似的问题,很多人建议指定编码,但它似乎不适用于geopy
。因为我试过这个:
countryinfo=CountryInfo(country,encoding="utf8")
我收到了这个错误:
TypeError: init() got an unexpected keyword argument 'encoding'
from countryinfo import CountryInfo
country = CountryInfo('Singapore')
country.capital()
# returns string
'Singapore'
country.capital() 将为您提供字符串格式的资本
引用自:https://python-forum.io/Thread-Countryinfo-package-charmap-error
来自@snippsat 的回答,2018 年 9 月 14 日,11:37 AM
打开 ..Lib\site-packages\countryinfo 文件夹中的 countryinfo.py。 将行更改为:
country_info = json.load(open(file_path, encoding='utf-8'))
对我有用。