Error when running Python converted exe: "UnicodeDecodeError: 'charmap' codec can't decode byte" using reverse_geocoder
Error when running Python converted exe: "UnicodeDecodeError: 'charmap' codec can't decode byte" using reverse_geocoder
我正在开发一个 Python 3.7.9 程序 (.py),当在 CMD 终端和 PyCharm 上 运行 时,它工作得很好(我正在使用 reverse_geocoder 模块 - 它与错误有关)。然后我使用 pyinstaller 将 .py 文件转换为 .exe。我在 dist 文件夹中得到了文件。但是,当 运行 时,我得到一个错误:
(我已将 reverse_geocoder 导入为 rg - 因为它会在错误中弹出)
Traceback (most recent call last):
File "myProgram.py", line 235, in <module>
location = reverseGeocode(coordinates)
File "myProgram.py", line 170, in reverseGeocode
result = rg.search(coordinates)
File "reverse_geocoder\__init__.py", line 292, in search
File "reverse_geocoder\__init__.py", line 88, in getinstance
File "reverse_geocoder\__init__.py", line 111, in __init__
File "reverse_geocoder\__init__.py", line 197, in extract
File "c:\users\USER\appdata\local\programs\python\python37\lib\encodings\cp1252.py", line 23, in decode
return codecs.charmap_decode(input,self.errors,decoding_table)[0]
UnicodeDecodeError: 'charmap' codec can't decode byte 0x81 in position 286: character maps to <undefined>
我尝试按照几个论坛问题的建议在 reverse_geocoder_init_.py 中将 encoding='utf-8' 添加到 open() ,但是错误没有改变。
有人可以帮帮我吗? P.S。我是 Python 的初学者,所以请尽可能简化答案。
我无法解决这个问题。相反,我决定使用 Bing 反向地理编码器,它解决了我的问题。这要容易得多,代码块更小,每月有更多免费 API 调用。
我正在开发一个 Python 3.7.9 程序 (.py),当在 CMD 终端和 PyCharm 上 运行 时,它工作得很好(我正在使用 reverse_geocoder 模块 - 它与错误有关)。然后我使用 pyinstaller 将 .py 文件转换为 .exe。我在 dist 文件夹中得到了文件。但是,当 运行 时,我得到一个错误:
(我已将 reverse_geocoder 导入为 rg - 因为它会在错误中弹出)
Traceback (most recent call last):
File "myProgram.py", line 235, in <module>
location = reverseGeocode(coordinates)
File "myProgram.py", line 170, in reverseGeocode
result = rg.search(coordinates)
File "reverse_geocoder\__init__.py", line 292, in search
File "reverse_geocoder\__init__.py", line 88, in getinstance
File "reverse_geocoder\__init__.py", line 111, in __init__
File "reverse_geocoder\__init__.py", line 197, in extract
File "c:\users\USER\appdata\local\programs\python\python37\lib\encodings\cp1252.py", line 23, in decode
return codecs.charmap_decode(input,self.errors,decoding_table)[0]
UnicodeDecodeError: 'charmap' codec can't decode byte 0x81 in position 286: character maps to <undefined>
我尝试按照几个论坛问题的建议在 reverse_geocoder_init_.py 中将 encoding='utf-8' 添加到 open() ,但是错误没有改变。 有人可以帮帮我吗? P.S。我是 Python 的初学者,所以请尽可能简化答案。
我无法解决这个问题。相反,我决定使用 Bing 反向地理编码器,它解决了我的问题。这要容易得多,代码块更小,每月有更多免费 API 调用。