如何从电报机器人发送图像
作者:互联网
我现在有我的机器人工作,但问题是它只能发送文本.我在Bot API中看到有发送照片,视频的功能……但我无法让它工作.有人取得了成功吗?我正在使用yukuku/telebot的python源代码
elif text == '/image':
img = Image.new('RGB', (512, 512))
base = random.randint(0, 16777216)
pixels = [base+i*j for i in range(512) for j in range(512)] # generate sample image
img.putdata(pixels)
output = StringIO.StringIO()
img.save(output, 'JPEG')
reply(img=output.getvalue())
当我更改代码时,没有任何反应.
img = Image.open('image.png')
img.show()
请帮我.我需要正确的代码.对不起,我的英语不好.
解决方法:
我有两个功能,一个适合发送本地图像,另一个适合发送远程图像.
def sendImage():
url = "https://api.telegram.org/bot<Token>/sendPhoto";
files = {'photo': open('/path/to/img.jpg', 'rb')}
data = {'chat_id' : "YOUR_CHAT_ID"}
r= requests.post(url, files=files, data=data)
print(r.status_code, r.reason, r.content)
def sendImageRemoteFile(img_url):
url = "https://api.telegram.org/bot<Token>/sendPhoto";
remote_image = requests.get(img_url)
photo = io.BytesIO(remote_image.content)
photo.name = 'img.png'
files = {'photo': photo}
data = {'chat_id' : "YOUR_CHAT_ID"}
r= requests.post(url, files=files, data=data)
print(r.status_code, r.reason, r.content)
标签:telegram-bot,python 来源: https://codeday.me/bug/20191003/1850440.html