如何从电报组下载所有共享媒体文件?

问题描述 投票:4回答:2

有一个电报组,其中包含超过40,000个共享文件。 是否有任何机器人可以同时下载所有这些机器人?如果没有,是否有任何使用python下载共享媒体文件的电报api脚本方法?

telegram telegram-bot python-telegram-bot
2个回答
1
投票

遗憾的是,电报bot api不允许查看旧消息(或文件)。

执行此操作的唯一方法是使用Telethon等API,就电报而言,它充当用户。


1
投票

您可以使用telethon,电报客户端下载公共组中的所有文件

from telethon import TelegramClient
from tqdm import tqdm
# These example values won't work. You must get your own api_id and
# api_hash from `my.telegram.org` , under API Development.
api_id = APIID
api_hash = 'APIHASH'
client = TelegramClient('session_name', api_id, api_hash)
client.start()
print(client.get_me().stringify())
# client.send_message('username', 'Hello! Talking to you from Telethon')
# client.send_file('username', '/home/myself/Pictures/holidays.jpg')
# client.download_profile_photo('hamidzr')
messages = client.get_messages('intothestates', limit=2000)
print(len(messages))
for msg in tqdm(messages):
client.download_media(msg)
© www.soinside.com 2019 - 2024. All rights reserved.