如何解决尝试跳过列表中的 unicode 值以写入树视图
我正在尝试将数据从 Strava 写入树视图,但是,写入时我会收到错误
_tkinter.TclError: character U+1f1e8 is above the range (U+0000-U+FFFF) allowed by Tcl
我意识到这是由于有人在他们的骑行名称中使用了表情符号。我编写的代码仅跳过某些 Unicode 值而不跳过其他值。我的代码如下所示:
count = 0
distanceM = 0
distanceML = 0
elevationM = 0
elevationFT = 0
full_name = ""
for row in strava.get_children():
strava.delete(row)
auth_url = "https://www.strava.com/oauth/token"
activites_url = "https://www.strava.com/api/v3/clubs/2885/activities"
payload = {
'client_id': "XXXXX",'client_secret': 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX','refresh_token': 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX','grant_type': "refresh_token",'f': 'json'
}
res = requests.post(auth_url,data=payload,verify=False)
access_token = res.json()['access_token']
ride_name = ""
header = {'Authorization': 'Bearer ' + access_token}
param = {'per_page':200,'page':1}
my_dataset = requests.get(activites_url,headers=header,params=param).json()
for i in range (0,len(my_dataset)):
entry = 1
strava.tag_configure('odd',background = "#fc4d03")
strava.tag_configure('even',background = 'white')
full_name = str(my_dataset[i]["athlete"]["firstname"])+ " " + str(my_dataset[i]["athlete"]["lastname"])
distanceM = int(my_dataset[i]["distance"])
distanceML = distanceM * 0.000621371
distanceML = '%.2f'%(distanceML)
elevationM = int(my_dataset[i]["total_elevation_gain"])
elevationFT = elevationM * 3.28084
elevationFT = '%.0f'%(elevationFT)
ride_name = (my_dataset[i]["name"])
try:
ride_name.encode('ascii')
except UnicodeEncodeError:
entry = 0
if entry == 1:
if count%2 == 0:
strava.insert("","end",text="",values=(full_name,my_dataset[i]["name"],distanceML,elevationFT),tag = ('even',))
else:
strava.insert("",tag = ('odd',))
count = count+1
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。