Telegram API发送图片报404错误:目标地址自动转字符串问题求解
Telegram发送图片报404错误的解决办法
问题详情
错误提示:
telebot.apihelper.ApiTelegramException: A request to the Telegram API was unsuccessful. Error code: 404. Description: Not Found
我写了一个给Telegram发图片的程序,发送时触发上面的错误。之前做了个GUI用来填API参数和消息接收目标,但发送时程序没法识别接收地址。排查后发现,目标地址字段的内容自动变成了字符串变量,该怎么解决?
解决步骤
- 强制类型转换:Telegram API要求接收地址(chat_id)必须是整数类型,但GUI输入框获取的内容默认是字符串。所以把输入内容赋值给
tujuan变量时,要显式转成整数:# 假设从输入框拿到的内容是input_content tujuan = int(input_content.strip()) - 加输入校验:转换前先检查输入是否是合法数字(支持带负号的群组/频道ID),避免转换失败报错:
input_content = 输入框内容.strip() if input_content.isdigit() or (input_content.startswith('-') and input_content[1:].isdigit()): tujuan = int(input_content) else: # 这里可以加GUI弹窗提示,或者打印错误信息 print("请输入有效的接收地址(纯数字格式,群组/频道ID可能带负号)") - 确认chat_id有效性:要确保输入的chat_id是正确的——个人用户的chat_id是一串纯数字,群组或频道的ID可能带
-100前缀,必须完整输入后再转换。
内容的提问来源于stack exchange,提问作者Mhd Irfan Fajar Nst
相关产品推荐
相关产品推荐

