Rat's

Simple Torrent:一个支持边下边播、无版权限制和自动上传的BT离线下载程序
说明:博主很久以前水过一个BT下载工具Cloud Torrent,不过好像2年没维护了,这里就介绍个基于Cloud...
扫描右侧二维码阅读全文
13
2020/01

Simple Torrent:一个支持边下边播、无版权限制和自动上传的BT离线下载程序

说明:博主很久以前水过一个BT下载工具Cloud Torrent,不过好像2年没维护了,这里就介绍个基于Cloud Torrent开发的项目Simple Torrent,同样的使用Golang编写,功能在原有的基础上加了些适用的功能,下载/上传速度限制、无版权限制,RSS订阅和自定义添加BT-Trackers等,而且还有api接口,同时还支持下载后自动调用外部命令,可玩性还是很高的,比如我们可以和aria2一样,将下载完成的资源自动上传到OneDriveGoogle Drive等网盘,博主大概用了下,感觉还可以,这里就分享下。

截图

请输入图片描述
请输入图片描述

安装

Github地址:https://github.com/boypt/simple-torrent

使用SSH客户端登录服务器,运行命令:

bash <(wget -qO- https://raw.githubusercontent.com/boypt/simple-torrent/master/scripts/quickinstall.sh)

然后使用ip:3000访问即可。

顺便提供个博主经常用的BT-Trackers服务器地址,效果不错,如下:

https://trackerslist.com/all.txt

直接在Web界面修改即可。

相关命令:

启动:systemctl start cloud-torrent
重启:systemctl restart cloud-torrent
停止:systemctl stop cloud-torrent
查看状态:systemctl status cloud-torrent

Docker安装

1、安装Docker

#CentOS 6系统
rpm -iUvh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
yum update -y
yum -y install docker-io
service docker start
chkconfig docker on

#CentOS 7、Debian、Ubuntu系统
curl -sSL https://get.docker.com/ | sh
systemctl start docker
systemctl enable docker

2、安装Simple Torrent

docker run --restart=always --name simple-torrent -d \
-p 3000:3000 \
-v ~/downloads:/downloads \
-v ~/torrents:/torrents \
boypt/cloud-torrent

然后使用ip:3000访问即可。

最后如果你访问不了Web端,可能要检查下防火墙端口,有安全组的也要放行下相关端口。

这里提供个CentOS系统防火墙开启命令,大致如下:

#CentOS 6
iptables -I INPUT -p tcp --dport 3000 -j ACCEPT
service iptables save
service iptables restart

#CentOS 7
firewall-cmd --zone=public --add-port=3000/tcp --permanent
firewall-cmd --reload

API使用

关于API的用法,官方文档说的很详细了,这里就大概列举几个,如下:

#通过远程地址添加种子
curl --data "http://domain.com/file.torrent" "http://localhost:3000/api/url"
#通过本地文件添加种子
curl --data-binary "my.torrent" "http://localhost:3000/api/url"
#通过磁力链接添加种子
curl --data "magnet:?xt=urn:btih:..." "http://localhost:3000/api/url"

#开始种子任务
curl --data "start:${HASH}" "http://localhost:3000/api/torrent"
#停止种子任务
curl --data "stop:${HASH}" "http://localhost:3000/api/torrent"
#删除种子任务
curl --data "delete:${HASH}" "http://localhost:3000/api/torrent"

#查看文件和种子信息
/api/files和/api/torrents

外部程序调用

先修改配置文件,通过上面脚本安装的配置文件在你的主目录,比如/root目录,配置文件cloud-torrent.json

修改以下参数:

#外部程序调用参数
"donecmd": "",

#比如我要下载完成后,直接运行/home目录下的rats.sh脚本
"donecmd": "/home/rats.sh",

那么下载完成后就会运行该脚本。

一般种子下载完成后,会返回以下参数变量,这里列举下主要的:

CLD_DIR为下载路径,且为绝对路径
CLD_PATH为下载文件名称
CLD_SIZE为文件大小
CLD_TYPE为调用事件类型,分为files和torrent,分别为种子里单个文件和整体文件
CLD_HASH为文件HASH值

这里随便放一个下载后自动移动的脚本,针对rclone挂载的文件夹。

#!/bin/bash

#下载后移动的文件夹路径
RemoteDIR="/down/moerats";  

if [[ ${CLD_TYPE} == "torrent" ]]; then
eval mv \'"${CLD_DIR}/${CLD_PATH}"\' "${RemoteDIR}";
#移动后停止该任务
curl --data "stop:${CLD_HASH}" "http://127.0.0.1:3000/api/torrent";
#停止后清除该任务,也就是不会出现在Web界面了
curl --data "delete:${CLD_HASH}" "http://127.0.0.1:3000/api/torrent";
fi

这里还可以结合TG机器人啥的一起使用,玩法很多,可以自行结合API一起使用。

要注意的是,配置调用脚本的时候,需要给予脚本可执行权,并重启程序生效,比如:

#给予可执行权,脚本路径/root/rats.sh
chmod +x /root/rats.sh
#重启程序
systemctl restart cloud-torrent

相关教程

最后关于这个无版权限制,博主从未遇见过版权投诉,所以无法测试,对于下载的话,有些资源速度还是不错的,具体效果就自行体验了。

搬瓦工CN2/GIA CN2套餐,1G带宽,速度快,建站稳定,支持支付宝,【点击查看】。
最后修改:2020 年 01 月 13 日 10 : 17 PM

发表评论

66 条评论

  1. 无聊死了

    你好问下我的服务器已经安装了aria2的一键脚本里面包含rlone 然后如何让这个的rlone也帮忙上传去gd

    1. Rat's
      @无聊死了

      用这个工具下载传到gd?直接可以套用下下面那个上传脚本就行,路径填到那个脚本指定的挂载目录,/home/wwwroot/a.xx.com/Cloud

    2. 无聊死了
      @无聊死了

      脚本是https://www.moerats.com/archives/517/ 的

  2. Kiruba

    Thank you pretty much for sharing the massive information to us.It is very useful and informative.
    Please keep blogging new updates.

  3. coinsinic

    大佬。想问一下用脚本安装的怎么卸载?系统是centos7

    1. Rat's
      @coinsinic

      试试这个命令rm -rf /usr/local/bin/cloud-torrent ~/cloud-torrent.json

  4. 52mfzy

    博主你好,我把上传到onedrive的脚本从移动改成了复制,不过貌似没有效果

    !/bin/bash下载后复制的文件夹路径

    CopyDIR="/onedrive/download";

    if [[ ${CLD_TYPE} == "torrent" ]]; then
    eval cp '"${CLD_DIR}/${CLD_PATH}"' "${CopyDIR}";

    复制后停止该任务

    curl --data "stop:${CLD_HASH}" "http://127.0.0.1:3000/api/torrent";
    fi

    1. Rat's
      @52mfzy

      看着好像没问题,反斜杠加了没,可以手动运行这个程序,大致上命令:
      /usr/local/bin/cloud-torrent -c ./cloud-torrent.json --host 0.0.0.0
      然后你可以看到日志调用信息,调用的时候看里面有没有报错啥的。

      1. 52mfzy
        @Rat's

        ok了,谢谢博主,不过博主,小站被墙了。。(联通)

        1. Rat's
          @52mfzy

          应该是ip的问题

  5. Tal

    doubi之前有CloudTorrent的一键脚本,SimpleTorrent在安装和配置上没有啥区别,所以把doubi的脚本里CloudTorrent的Github地址换成SimpleTorrent之后,就能一键安装SimpleTorrent了

    1. 路人甲
      @Tal

      怎么替换呢 能分享下吗

    2. Rat's
      @Tal

      是的,2个差不多。

  6. 自作自受

    大佬,这个如何配合你那个最新的上传插件使用啊,那个使用的是$1,$2..和这个不对应啊,我的vps挂载不上rclone用不了你这个脚本

    1. Rat's
      @自作自受

      额,2个下载软件,是不对应的。

      1. 自作自受
        @Rat's

        那有没有可以配合的脚本啊。。

        1. Rat's
          @自作自受

          好像没有,不过理解了就会自己改了

  7. deku

    诶,原来openwrt是放在/usr/bin里面,我太憨憨了

    1. chen
      @deku

      openwrt的docker默认安装在哪个文件夹啊,我的simple torrent显示我只有57m的空间

  8. 闪闪惠子

    今天喜提版权警告一枚

    1. Rat's
      @闪闪惠子

      obfs混淆都开了么?你是第二个喜提的

  9. koqmgkz

    大佬,第一次可以下载,第二次下载种子的时候一直在转圈,下载不了怎么破?

    1. Rat's
      @koqmgkz

      这种情况貌似只能等了

  10. 某懵逼少年

    大佬我被搞晕了windows10怎么安装啊?这些教程好像都是Linux的啊?

    1. shang
      @某懵逼少年

      windows推荐使用aria2,网上教程很多。

  11. 无聊死了

    你好,如果我增加种子后会出现disconnected.还有就是不知道为何如果我启用了用户和密码后网站直接上不去

    1. Rat's
      @无聊死了

      disconnected看是不是网络问题。

      1. 无聊死了
        @Rat's

        你说的是vps的还是wifi的??,我的这两个应该都没问题的我用aria2就是没这问题而且我也用了流量试打开了每次都是在增加magnet后就会disconnected然后magnet就会消失要重新增加过。我的这种子aria2 不能下载因为名字太长了

  12. taetae

    我感觉自己快吐血了。请求帮助,我现在 装了 docker 然后安装了 Simple Torrent,由于我想弄个操作我把 Simple Torrent 配置文件删了。我现在怎么停止 Simple Torrent 服务,然后重新安装?

    1. Rat's
      @taetae

      好像重启后,配置文件会重新生成

  13. taetae

    无法做到,边下载边播放呢,只能下载完了才能看

  14. silmace

    只能下载BT,感觉没有aria2好用。问一下debain怎么删掉呢

    1. Rat's
      @silmace

      脚本安装还是?

      1. silmace
        @Rat's

        脚本安装

        1. Rat's
          @silmace

          rm -rf /usr/local/bin/cloud-torrent ~/cloud-torrent.json

  15. xiaob

    大佬,Simple Torrent下载了一个6G的文件移动到rclone提示mv: error writing to '/onedrive/windows.iso': I/O error用的是onedrive的教育版也根据之前的解决Rclone挂载Google Drive时上传失败和内存占用高等问题教程参数设置还是一样的情况,求教

    1. Rat's
      @xiaob

      这个问题目前只在api过度使用,被限制的时候出现过,其它情况就不太清楚了

  16. 蓝爵薇

    坏消息,滥用投诉,VPS被关机了

    1. Rat's
      @蓝爵薇

      带宽滥用还是?

      1. 蓝爵薇
        @Rat's

        版权

        1. Rat's
          @蓝爵薇

          设置那里obfs 2个开关都开了吗?

  17. 瞎折腾

    大佬,廖雪峰这个网站程序能不能出个教程https://github.com/michaelliao/itranswarp

  18. 克里斯蒂娜

    请问如果不挂载,而是直接使用rclone copy命令上传到gd或者od。上传脚本要怎么写呢?

    1. Rat's
      @克里斯蒂娜

      改下eval mv '"${CLD_DIR}/${CLD_PATH}"' "${RemoteDIR}";命令就行了,"${CLD_DIR}/${CLD_PATH}"是默认的下载完成后的文件或文件夹,自己根据rclone照搬下命令就行了。

  19. zz

    大佬,按照你用Docker安装, 那外部程序调用配置文件cloud-torrent.json,去哪里找这个文件

    1. Rat's
      @zz

      docker我没注意,你试试~/torrents这个文件夹看看

  20. 蓝爵薇

    可以下载完直接看和删除文件还是比较舒服的

    1. Rat's
      @蓝爵薇

      是的。

  21. 小东

    安装了之后找不到cloud-torrent.json这个配置文件,真奇怪
    难道要手动创建吗

    1. Rat's
      @小东

      用的脚本吗?这个默认会在主目录,/root目录看看,找不到的话,试试这个命令find / -name cloud-torrent.json。

  22. 陪伴

    10个任务,8个loading!咋办啊。。。用的博主的BT-Trackers服务器也一样

    1. Rat's
      @陪伴

      这个速度也与资源有关,让他挂着看看。

  23. 陪伴

    求个OneDriveUploader的自动上传脚本,谢谢

    1. Rat's
      @陪伴

      改一下移动命令就行了,eval mv '"${CLD_DIR}/${CLD_PATH}"' "${RemoteDIR}";,这个是需要上传的文件/文件夹\'"${CLD_DIR}/${CLD_PATH}"' ,其它就照搬OneDriveUploader上传参数

  24. nana

    有个问题,想请教大佬。我用iframe把谷歌日历嵌入了网页里面,但是谷歌国内访问不可,caddy有没有什么办法把网页先缓存到国外的vps里实现国内访问vps从而直接访问谷歌日历?或者说caddy走代理之类的(已经有了v2了)..有办法吗?

  25. 光头强

    没啥说的,提前祝你大鸡吧

  26. xxx

    如何自动上传到onedrive呢?

    1. Cat's
      @xxx

      用rclone挂载onedrive,然后用帖子里的脚本进行自动移动。你肯定没仔细看帖子。

  27. baysonfox

    扔一个docker-compose的配置文件:
    version: "3"
    services:
    torrent:

    container_name: simple-torrent image: boypt/cloud-torrent:latest ports: - "3000:3000/tcp" volumes: - '~/downloads:/downloads' - '~/torrents:/torrents' restart: always
    1. Rat's
      @baysonfox

      这评论框显示这种有点瑕疵

  28. uranus

    Cloud Torrent会有重启之后丢种子/进度/文件的问题,不知道这个改版有没有解决
    比起aira2好的就是自带前端

    1. Rat's
      @uranus

      重启我还没注意,不过这个功能大多很适用

  29. 浮游

    虽然无版权限制,但是有些主机商就不能触及版权吧

    1. Rat's
      @浮游

      这个支持BT的加密和混淆,理论上来说是不会通过抓取网络数据查到,不过要是版权商进行钓鱼执法的话,就说不准了。

  30. 刀下的小猪

    没啥说的,提前祝你新年快乐吧

    1. Rat's
      @刀下的小猪

      谢谢,你也快乐