猿问

如何在 Telehton newMessage 事件中识别和下载图像?

我编写了一个简单的 python 脚本来使用 Telethon 事件处理程序将用户看到的所有消息保存到文件中:


@CLIENT.on(events.NewMessage)


async def my_event_handler(event):

    sender = await event.get_sender()

    chat_id = event.chat_id


    out ='\n\n' +  sender.username + ': ' + event.text + ' [' + str(chat_id) + ']'

    name = hashlib.sha1(out.encode('utf-8')).hexdigest()


    outdir = ECHODIR + '/' + str(chat_id)


    f_h = open(outdir + '/' + name, 'a')

    f_h.write(out)

    f_h.close()


CLIENT.start()

CLIENT.run_until_disconnected()

如何检测收到图像并从事件中下载图像?


ps 删除了不必要的代码,例如检查目录是否存在


一只斗牛犬
浏览 139回答 1
1回答

MM们

根据 的对象参考摘要Message,该message.photo属性将是“此消息中的照片媒体,如果有的话。”。这意味着,要检测代码中的图像(或照片),您可以执行以下操作:if event.photo:     ...这些Message方法还包含一个message.download_media()这样的:saved_path = await event.download_media(optional_path)
随时随地看视频慕课网APP

相关分类

Python
我要回答