python-3.x - Telethon 不允许机器人加入频道(您尝试调用的方法无法作为机器人执行(由 JoinChannelRequest 引起)
问题描述
我是 Telethon 的新手,我仍然有疑问。
我的任务似乎很简单:我想创建一个机器人来从频道中抓取一些信息,但我卡在了第一步:将机器人加入到 chanel。
为了确保我做得很好,我在telethon.dev页面中寻找并找到了这段代码,我正在尝试:
from telethon.sync import TelegramClient
from telethon import functions, types
api_id = XXXXXXXXXXXX
api_hash = 'XXXXXXXXXXXXXXXXXXXXXX'
token= 'XXXXXXXXXXXXXXXXXXXXXX'
with TelegramClient('anon', api_id, api_hash) as client:
result = client(functions.channels.JoinChannelRequest(
channel='publicchanel'
))
print(result.stringify())
我还尝试使用(当然,更改需要更改/添加的内容)以机器人身份登录:
bot = TelegramClient('bot', api_id, api_hash).start(bot_token=token)
但我也遇到了同样的错误:
telethon.errors.rpcerrorlist.BotMethodInvalidError:bot 用户的 API 访问受到限制。您尝试调用的方法无法作为机器人执行(由 JoinChannelRequest 引起)
我究竟做错了什么?
PD:如果重要的话:我使用Debian10作为操作系统
解决方案
这不是 Telethon 限制,而是 Telegram 限制。机器人不能自行加入群组或频道,需要由用户添加。
推荐阅读
- android - 当有一个获取更多内容的按钮时,是否可以使用 jsoup 检索更多信息?
- reactjs - 仅文件复制和保留导入的汇总图像导入
- laravel - loadMigrationsFrom 方法在流明中不起作用
- google-apps-script - 有没有办法让 Google Forms 中的复选框中的每个选项成为 Google Sheets 中的标题?
- python - 如何将 STL 导入 pygltflib
- r - r控制台中汉字的输出问题,r版本4
- flutter - 无法为 TimeofDay 设置值,它始终为空
- arduino - ESP32 服务中断例程需要多快?
- loops - 邮递员测试。循环遍历嵌套对象数组以查找空值
- javascript - 检查 URL 中的查询字符串以及查询字符串是否在 javascript (vue) 中具有值