我正在编写一个电报机器script,它使用此API调用显示天气:
http://api.openweathermap.org/data/2.5/weather?q=CITY_NAME_IN_RUSSIAN&APPID=API_KEY_HERE&lang=ru&units=metric&encode=utf-8
参数CITY_NAME_IN_RUSSIAN=<city name>
。
示例城市名称Moscow
为俄语Москва
。
如果我用英语Moscow
发送,那么一切正常。但如果我发送俄语Москва
,我会收到错误。
UnicodeEncodeError: 'ascii' codec can't encode characters in position 24-28: ordinal not in range(128)
我该如何解决?
答案 0 :(得分:1)
我假设您正在使用python 2.如果是这样
试试unicode('Москва','utf-8')
。
您也可以在文件# -*- coding: utf-8 -*-