优雅的使用tg机器人自动下载频道内文件

笔记本出问题了,现在没法继续写我的自动下载机器人了 于是在GitHub找到了一个同样好用的机器人源码

脚本需要python3.6以上环境,具体安装教程自行搜索。

测试环境 Ubuntu 18.04.5 LTS & Python 3.6.9 如果164行报错那可能就是你的系统问题 换个系统试试就可以

1. 前提

git clone https://github.com/snow922841/telegram_channel_downloader.git

2. 使用

  • 进入脚本目录
cd telegram_channel_downloader
  • 安装依赖
pip3 install -r requirements.txt
  • 修改telegram_channel_downloader.py文件内的 api_id 和 api_hash 为你自己的
  • 修改脚本内的频道名称、保存路径、 bot_token 、 admin_id 、 chat 等必填配置
  • 鉴于网友需要上传GD,特添加了使用gclone自动上传到团队盘的功能,需要在配置区域设置。具体查看脚本内注释
  • 运行
python3 tg_channel_downloader.py
  • 按照提示输入telegram绑定的手机号获取验证码并输入
  • 配置完成后需要给bot发送 /start 频道的链接 0 才会正式开始运行脚本,否则无法启动 0代表开始下载消息的ID,可以自行修改。

原创文章,作者:南猫,如若转载,请注明出处:https://southcat.net/2758/


不妨点个广告再走嘛

Leave a Reply

Your email address will not be published. Required fields are marked *

Comments(16)

  • Bass
    Bass 2021年6月19日 pm12:56

    你好,博主。
    我按照你给的方法尝试搭建并修改了tg_channel_downloader.py 13-27行的代码。
    在文件的下载中,我的机器人给我反馈“[Errno 2]No such file or directory:'fclone':'fclone'”
    我在102行找到了'fclone'并将它修改成了其他目录但它依然给我报错。
    请问我应该修改哪里呢?

    • 南猫
      南猫 2021年6月19日 pm1:00

      @Bassfclone是上传到谷歌网盘才使用的 默认这个功能是开启的 你修改第18行的 upload_file_set = True 改成upload_file_set = False 你再试试

    • Bass
      Bass 2021年6月19日 pm1:56

      @南猫感谢博主的的回复,我保持了默认的“upload_file_set = True”,事实上不关这个的事。
      当然,如果文件上传失败,我会尝试修改这里试试。

    • Bass
      Bass 2021年6月19日 pm7:57

      @南猫OK!谢谢大佬。发个收款码吧,我请你喝奶茶。

    • 南猫
      南猫 2021年6月19日 pm10:44

      @Bass

    • Bass
      Bass 2021年6月19日 pm1:52

      @Bass好吧,我在项目介绍中发现了这个:
      "102行的fclone替换为rclone,rclone需要自己安装。"
      但我并没有找到下载的文件,我正在尝试下载少量的文件,测试是否能够正常上传到我的Google Drive上。

    • 南猫
      南猫 2021年6月19日 pm1:54

      @Bassfclone和rclone都需要自己安装的 17行是文件保存的位置

    • Bass
      Bass 2021年6月19日 pm2:01

      @南猫17行我保持的默认路径,我在其中找到了我要下载文件的名字(只有一个文件名,而且非常的小)

    • Bass
      Bass 2021年6月19日 pm2:09

      @南猫我很疑惑,我的服务器只有储存8G如果8G空间如果服务器储存满了,它会自动停止并开始上传文件吗?
      我想你该知道,是否可以加一个参数将下载圈定在一些文件之内呢?

    • Bass
      Bass 2021年6月19日 pm2:12

      @Bass好吧,因为打的急,这句话里有很多错字。
      原意应为:
      我很疑惑,我的服务器只有储存8G,如果8G空间储存满了,它会自动停止并开始上传文件吗?
      我想知道,是否可以加一个参数将下载圈定在一些文件之内呢?

    • 南猫
      南猫 2021年6月19日 pm4:32

      @Bass作者没有写针对这方面的代码 下载完成一个文件的同时就会进行上传 我看代码上传完成之后是有删除文件的操作的

    • Bass
      Bass 2021年6月19日 pm5:40

      @南猫我在教程中完全没有看到如何上传Drive网盘的,你可以讲一讲这个项目绑定Drive的过程和方式吗?可能是因为我没有绑定我的Drive,我的服务器下载流量已经跑了70+G了,网盘里还没有任何一点相关的内容。

    • Bass
      Bass 2021年6月19日 pm5:48

      @南猫比如说:drive_id是这个吗?
      https://cdn.jsdelivr.net/gh/juzi5914/tuchuang/2021/06/19/f63ad2.png
      只填drive_id就可以上传文件了吗?

    • 南猫
      南猫 2021年6月19日 pm5:50

      @Bass填写这个 需要配合配置好的rclone或是fclone进行上传 你可以搜索下我之前的文章我记得有写过配置的教程

    • Bass
      Bass 2021年6月19日 pm6:58

      @南猫只使用rclone挂载Drive,然后把这个项目的下载目录转到挂载的目录上对吗?

    • 南猫
      南猫 2021年6月19日 pm7:55

      @Bass