如何通过脚本或自动化方式批量创建Telegram频道并添加指定用户
批量创建Telegram频道实现方案
批量操作存在账号风控风险,单日创建超过3-5个频道极大概率触发账号临时或永久封禁,操作前请自行评估风险。
实现思路
Telegram官方开放的MTProto API支持创建频道、修改频道信息、邀请用户的全流程操作,你可以通过Python、Java等语言封装的MTProto API SDK实现需求,这里以Python生态常用的Pyrogram SDK为例给出实现步骤。
操作步骤
- 第一步:申请API凭证
使用你要操作的Telegram账号绑定的手机号,在Telegram官方开发者平台完成验证,获取专属的API_ID和API_HASH,这两个参数是调用API的必备凭证。 - 第二步:安装依赖
执行命令安装所需SDK:pip install pyrogram tgcrypto - 第三步:编写批量执行代码
参考代码示例:from pyrogram import Client from pyrogram.types import ChatPrivileges import time # 配置你的API凭证和操作账号 api_id = 你申请的API_ID整数值 api_hash = "你申请的API_HASH字符串" app = Client("my_account", api_id, api_hash) # 批量创建的频道配置列表,按你需求修改 channel_configs = [ { "name": "频道1名称", "description": "频道1描述", "invite_users": ["@user1", "@user2"], # 可填用户名或者数字用户ID "is_public": False, # 是否设为公开频道 "public_username": "channel1_public" # 公开频道的专属链接后缀,is_public为True时必填 }, { "name": "频道2名称", "description": "频道2描述", "invite_users": ["@user3"], "is_public": False } ] async def main(): async with app: for config in channel_configs: # 创建频道 channel = await app.create_supergroup( title=config["name"], description=config["description"], is_channel=True ) print(f"已创建频道:{config['name']}, ID:{channel.id}") # 如果是公开频道,设置公开链接 if config["is_public"]: await app.set_chat_username(channel.id, config["public_username"]) # 邀请指定用户加入频道 if config.get("invite_users"): await app.add_chat_members(channel.id, config["invite_users"]) # 如果要把邀请的用户设为管理员,可以取消注释下面这段 # for user in config["invite_users"]: # await app.promote_chat_member( # chat_id=channel.id, # user_id=user, # privileges=ChatPrivileges(can_manage_chat=True, can_post_messages=True) # ) # 加延迟避免触发频率限制,建议最低30秒以上 time.sleep(60) app.run(main()) - 第四步:运行代码
首次运行时需要按提示输入操作的Telegram账号绑定的手机号和收到的验证码完成登录,后续会自动保存会话无需重复验证。
注意事项
- 两次创建频道的操作间隔不要低于30秒,单日创建频道数量不要超过5个,邀请用户的操作也需要控制频率,避免触发反垃圾机制
- 要邀请的用户如果不是你的账号联系人,部分情况下需要用户先给你的账号发过一条消息,否则可能出现邀请失败的问题
- 如果你需要用Shell、Java实现,逻辑完全一致,Shell可以调用tgcli工具封装操作,Java可以使用tdlib或者telegram-bot-api的MTProto封装版本实现
内容的提问来源于stack exchange,提问作者usert4jju7
相关产品推荐
相关产品推荐

