我只是实现了一个简单的机器人,它应该向我的chat_id
发送一些照片和视频。好吧,我使用的是python,这是脚本
import sys
import time
import random
import datetime
import telepot
def handle(msg):
chat_id = msg['chat']['id']
command = msg['text']
print 'Got command: %s' % command
if command == 'command1':
bot.sendMessage(chat_id, *******)
elif command == 'command2':
bot.sendMessage(chat_id, ******)
elif command == 'photo':
bot.sendPhoto(...)
bot = telepot.Bot('*** INSERT TOKEN ***')
bot.message_loop(handle)
print 'I am listening ...'
while 1:
time.sleep(10)
在bot.sendphoto
行中,我将插入路径和我的图像的chat_id
,但什么也没发生。
我哪里错了?
谢谢
7条答案
按热度按时间1sbrub3j1#
如果您有本地映像路径:
如果您有来自互联网的图像的URL:
py49o6xq2#
只需使用***Requests***库就可以做到:
iugsix8n3#
在使用python-telegram-bot发送图像沿着标题时,我使用了以下命令:
eqoofvh94#
我也尝试过从python使用requests发送。也许这是个迟来的答案,但是把这个留给像我这样的人。也许它会派上用场。我成功地使用了
subprocess
,如下所示:f4t66c6m5#
这是用电报发送照片的完整代码:
zyfwsgd66#
您需要传递2个参数
wmvff8tz7#
sendPhoto至少需要两个参数;第一个是目标 chat_id,第二个是 photo,您有三个选项:
1.如果照片已经上传到电报服务器,则传递file_id(推荐,因为您不需要重新上传)。
1.如果照片是上传到其他地方,传递完整的http网址和电报将下载它(最大照片大小为5 MB atm)。
1.使用multipart/form-data发布文件,就像你想通过浏览器上传一样(这种方式最大照片大小为10 MB)。