我使用Python向电报组发送消息,URL返回404。以下是代码:
import requests
from config import API, CHAT_ID
# telegram url
url = "https://api.telegram.org/bot{}".format(API)
print(url)
def send_mess(text):
params = {'chat_id': CHAT_ID, 'text': text}
response = requests.post(url + 'sendMessage', data=params, timeout=20)
return response
if __name__ == '__main__':
d = send_mess('Hi')
print(d)
发布于 2021-05-24 13:08:43
看起来API
或CHAT_ID
配置得不太好。尽管如此,我还是建议使用telegram
库:
pip install python-telegram-bot
import telegram
def send_mess(text):
token = "XXXXXX"
chat_id = "XXXXXX"
bot = telegram.Bot(token=token)
bot.sendMessage(chat_id=chat_id, text=text)
if __name__ == '__main__':
d = send_mess('Hi')
print(d)
发布于 2021-05-24 15:45:11
在您的代码中有一个简单的错误,让我们看看以下几行:
url = "https://api.telegram.org/bot{}".format(API)
...
response = requests.post(url + 'sendMessage', data=params, timeout=20)
这使我们产生了一个像url一样的世界;
https://api.telegram.org/bot123456:QWERTYsendMessage
在这里,url在令牌和方法之间缺少一个/
,建议更改;
url + 'sendMessage'
到url + '/sendMessage'
以获得正确的url:
https://api.telegram.org/bot123456:QWERTY/sendMessage
^
然后,您的代码按照预期发送消息。
https://stackoverflow.com/questions/67672240
复制相似问题