Telethon调用get_dialogs指定文件夹ID3报错FolderIdInvalidError排查
问题解决:Telethon调用
get_dialogs指定自定义文件夹报错FolderIdInvalidError 核心原因
Telegram API对自定义对话文件夹的ID有特殊处理:自定义文件夹的ID在传入get_dialogs的folder参数时,需要在原ID基础上加100。你获取到的DialogFilter.id=3是自定义文件夹的原始ID,但直接用这个值调用会触发无效ID错误。
解决方案
修改你的代码,将folder参数的值改为3 + 100 = 103:
async def get_users_response(client, users): dialogs = await client.get_dialogs(folder=103) for dialog in dialogs: print(dialog)
补充说明
Telegram的对话文件夹分为两类:
- 系统默认文件夹(如默认、存档):使用负数或小正数ID(比如默认是0,存档是-1),可以直接传入
folder参数 - 自定义创建的文件夹:原始ID从1开始计数,但调用
get_dialogs时必须将ID加上100才能被API正确识别
内容的提问来源于stack exchange,提问作者PEPPA PIG
相关产品推荐
相关产品推荐

