【发布时间】:2020-04-27 16:02:45
【问题描述】:
我正在尝试通过我的 Telegram 机器人发送照片,但出现错误。我的电脑上有照片的文件路径。也许我没有正确输入文件路径。我得到的错误是:
SyntaxError: (unicode error) 'unicodeescape' codec can't decode bytes in position 2-3: truncated \UXXXXXXXX escape`.
指的是在路径名之前。这是我的代码:
import requests
import json
bot_token = 'XXXXXX'
chat_id = "-100YYYYYY"
file = "C:\Users\name\OneDrive\Desktop\Capture.PNG"
message = ('https://api.telegram.org/bot'+ bot_token + '/sendPhoto?chat_id='
+ chat_id + 'photo=' + file)
send = requests.get(message)
【问题讨论】:
-
这里的错误信息指向'\U'。 python中的反斜杠'\'字符用于指代特殊字符,例如换行符'\n'。您需要将反斜杠加倍。 “C:\\Users\\name\\OneDrive\\Desktop\\Capture.PNG”。我认为您正在构建的请求不会起作用。服务端 api.telegram.org 没有 Capture.PNG,所以给路径也没用,需要自己想办法发送实际图片。等待了解电报 API 的人回答或尝试阅读电报文档。
-
如何将照片添加到 Telegram 服务器?然后那个 file_id 会是什么?
标签: python telegram telegram-bot python-telegram-bot