是否有一种方法可以禁用媒体重用file_id?因为它是在数据库上查找的,所以我希望每次都重新上传媒体
我在电视上使用复制消息client.send_meesage,它还在数据库中查找图像或视频的file_id
我希望制作电视来上传媒体,而不是从数据库中重用file_id,因为client.send_file可以用allow_cache=False完成
我查看了文档,找不到任何相关的东西,而且似乎allow_cache=False不适用于client.send_meesage
发布于 2022-02-10 03:11:56
您可以使用telethon.sessions.string.StringSession,这不会缓存任何数据。
但是,您可能仍然希望缓存实体,这样您就可以创建从一个telethon.sessions.sqlite.SQLiteSession或telethon.sessions.memory.MemorySession继承的自己的类,覆盖get_file方法,并使其返回始终是None。如果既不想缓存文件,也不想缓存文件,则必须重写cache_file方法并使其成为pass。
from telethon import TelegramClient
from telethon.sessions import SQLiteSession
class NoFilesSession(SQLiteSession):
def get_file(self):
pass
def cache_file(self):
pass
client = TelegramClient(NoFilesSession('client'), API_ID, API_HASH)这个新的会话将模拟函数client.send_message,使它相信缓存中没有匹配项。
https://stackoverflow.com/questions/71034629
复制相似问题