使用tg机器人自动下载并上传频道内文件到本地&网盘

因为要转存tg某些群的视频和图片(比如马里奥),但是太多了一个一个转存太麻烦了,有没有什么好的办法呢?

于是找到了这个项目:GitHub地址:telegram_channel_downloader

如果运行运行脚本时出现164行报错,那可能就是你的系统或是环境问题,这一点要注意。

一. Telegram API 申请

打开 https://my.telegram.org/apps ,登录后选择 Apps ,填写相关信息后自动生成 apiId 和 apiHash 等信息。如果之前申请过,进入 Apps 后即可看到。

二. 搭建tg机器人

  1. 下载脚本
git clone <https://github.com/snow922841/telegram_channel_downloader.git>
  1. 安装 rclone。如果只需要下载到本地,则无需安装这一步
Rclone安装及检查命令:
curl <https://rclone.org/install.sh> | sudo bash
rclone --version
*** 安装完之后一定要记得配置好需要上传的网盘。
  1. 进入脚本目录
cd telegram_channel_downloader
  1. 安装依赖
pip3 install -r requirements.txt
  1. 修改 telegram_channel_downloader.py 文件内的相关信息:

api_id、api_hash:telegram api得到的信息,分别填入对应位置;

bot_token:联系@BotFather 创建一个机器人,也可以是现有的。将获得的token。填入其中;

admin_id:联系@get_id_bot 发送随意消息获取;

如果需要上传到OD:应修改脚本中以下参数:drive_id=”,drive_name=’onedrive’,onedrive 就是你配置 rclone 的时候填的网盘名称,还有第102行的“fclone”替换为“rclone”;

所有配置都有相应备注,根据需要修改。

  1. 运行脚本:可用SCREEN保持在线
python3 tg_channel_downloader.py
 # 输入 telegram 所绑定的手机号,获取验证码并输入后即可

screen相关命令:

# 创建一个screen会话:
screen -S xx      #xx为创建会话的名称

# 隐藏并保留当前会话窗口:
按Ctrl+A,再按"D"键

# 恢复会话窗口:
screen -r xx      #恢复名字为xx的会话

# 如果忘记或者没有设定会话名称:
screen -ls      #列出所有会话,找到并使用恢复命令即可

# 关闭会话窗口
exit

7. 运行:给机器人发送 /start 频道的链接 0 ,就可以正式开始运行脚本,下载文件了。

频道的链接:点击你的频道名就能看到频道链接;

0:这是消息ID,可以自己定义,0代表的是最早的信息。如果要从特定某条信息往后下载,鼠标右键点击该条消息,选择复制该消息直链,就能从链接末尾看到消息ID数字。

三. 效果

四. 如果你的服务器没有流量

  1. 你可以用自己的电脑
  2. 你可以用google colab
  • 打开google colab,并登录
  • 文件-新建笔记
  • 输入:!bash;点击左边的播放按钮

  • 这就相当于一个linux了,之后安装RCLONE,配置网盘,下载脚本文件,进入脚本文件夹内,安装依赖。
  • 这时要修改脚本文件,但是google colab修改文件内容不是那么容易,那么可以这样做:

点击左边的播放按钮,暂停这行代码,在下面新建一行代码:

在这行代码下面粘贴修改好的tg_channel_downloader.py文件。

点击左边的播放按钮。

再回到第一行代码,将!bash改成!python3 tg_channel_downloader.py,点击播放按钮运行即可,就可以输入telegram信息了。

  • 防止Google Colab自动断开代码:
    每60分钟自动运行代码刷新,解除90分钟断开限制.
    使用方法:colab页面按下 F12或者 Ctrl+Shift+I (mac按 Option+Command+I) 在console(控制台) 输入以下代码并回车。
    复制以下代码粘贴在浏览器console!!不要关闭浏览器以免失效。
    function ConnectButton(){
        console.log("Connect pushed"); 
        document.querySelector("#connect").click() 
    }
    setInterval(ConnectButton,60000);
-> 加入科技玩家交流群组:点击加入 <-
注意:
1.文中二维码和链接可能带有邀请性质,请各位玩家自行抉择。
2.请勿通过链接填写qq号与密码、银行卡号与密码等个人隐私信息。
3.禁止纯拉人头,拉app注册等信息,发现必小黑屋。
4.同一种信息仅发一次,多发会被删除。
5.文章中源码或APP等,无法保证其绝对安全,需自行辨别。
6.文章关联方不想展示也可以微信站长“socutesheep”删除。
本文由 @leslie 发布。如若转载,请注明出处: 科技玩家 » 使用tg机器人自动下载并上传频道内文件到本地&网盘

给TA买糖
共{{data.count}}人
人已买糖
教程玩家投稿精选文章

iOS远程控制Android

2022-3-24 19:36:18

教程玩家投稿

js脚本编写教程,第三弹,nodejs调用api接口

2022-3-25 21:01:18

21 条回复 A文章作者 M管理员
贴心提醒
请认真对待作者付出,勿发表无意义言论,触发过滤规则的评论将无法提交,包含敏感词的评论会自动变成待审核状态哦。
  1. 小朋友

    学习了👍

  2. 马里澳大叔

    看了一眼马里奥小屋,晕。。。。。

  3. LQBBY

    没用下载不了

    • leslie

      你开代理了吗

    • leslie

      不对,应该问哪里出错了

  4. 浩轩丶

    详细点的有么

  5. 𓆡

    学习学习

  6. chen91552

    服务器只有20g磁盘不够大

  7. pirateking

    厉害啊,学习实践起来

  8. 谢昆咬

    哎,国内良心云,跟电报不通,不知道有没有mtproxy教程

  9. 有趣的闲猫

    google colab撑死运行3小时……太难了要下载的太多,这个脚本没办法选择下载0-500之间的消息,经常断了后有漏的

  10. Carol

    mark一手,这么优秀哈哈

  11. Carol

    干货颇多,给你点点赞🤔

  12. Carol

    有意思,Carol我来支持一下🤔

  13. Carol

    Carol前来顶帖🤗

  14. 逸龙

    马里奥小屋是啥

  15. 孤傲

    学习学习

  16. 黑桃A

    学习了👍

个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索