Transmission+Flexget实现RSS自动下载.docx
- 文档编号:9121736
- 上传时间:2023-02-03
- 格式:DOCX
- 页数:12
- 大小:486.19KB
Transmission+Flexget实现RSS自动下载.docx
《Transmission+Flexget实现RSS自动下载.docx》由会员分享,可在线阅读,更多相关《Transmission+Flexget实现RSS自动下载.docx(12页珍藏版)》请在冰豆网上搜索。
Transmission+Flexget实现RSS自动下载
QNAPNAS(TS-212P)之Transmission+Flexget
在PT站实现RSS自动下载
(2014-8-18修改)
一、本文在威联通(QNAP)TS-212P上成功实现PT站的RSS自动下载。
由于网上资料零散,并且针对的NAS操作系统版本有新有旧,本人在查阅了大量中、英文资料并花三天时间研究后,终于搞定。
写此文旨在帮助还在苦苦研究此功能的同好们,同时也致敬那些帮助过我的同好们(包括网上各种资料的作者们)。
二、在接下来看此文前,还要哆嗦几点:
1、虽然是在QNAPTS-212P的机器上实现的,但Linux系统大同小异,希望看者能举一反三;
2、本文仍抛砖引玉之作,有误之处希望大神们指正;
3、在接下来的操作中,要求操作者最好能熟悉Linux(或UNIX)的几个常用命令和vi编辑命令。
三、Transmission+Flexget之步骤(注意在Linux下是区别大小写的,所以下面的命令请完全按照所列出的输入):
(一)、首先用火狐浏览器登录你的NAS,然后保证系统里安装了OptwareIPKG和Transmission这两个程序(如果没有安装,请到“AppCenter”里安装)
(二)、下载Putty(http:
//the.earth.li/~sgtatham/putty/latest/x86/putty.exe)到电脑上。
(三)、在电脑上启动putty.exe,出现如下画面,在HostName中填上NAS的IP地址(建议给NAS分配一个固定地址),在SavedSessions里填上任意名字,点Save按钮保存以备下次使用。
软件其它的选项不变,重要检查SSH是否被选中,Port端口是否为22,然后点下方的Open后软件会连接NAS。
(四)、成功连接后,会出现命令窗口(如下图),输入和登录web一样的用户名和密码就可以成功登录。
(五)、成功登录后是在用户主目录下,如下图:
(六)、顺序执行以下命令(如下图)。
需要注意的是每个命令执行完成后都有信息显示,一般你在最后一行看到Success一类的单词表时成功了,看到Failue一类的表明失败了,最好就再重新执行一遍。
执行安装flexget时会非常慢,程序会连网到code.google去下载东西。
这个时候建议保持网络畅通,给NAS留最大的网络宽带。
ipkginstallpython27
ipkgupdate
ipkginstallpy27-setuptools
easy_install-2.7flexget
(七)、安装TransmissionRPC,执行命令如下:
easy_install-2.7transmissionrpc
(八)、检查Flexget的版本,成功后会返回flexget的版本,注意V是大写。
执行命令如下:
/opt/local/bin/flexget-V
参考资料:
(九)、在用户主目录下建立.flexget目录,输入mkdir.flexget后回车:
PS:
经实际运用发现,212P在重启后其用户主目录,即/root目录下自建的目录或文档会丢失,所以建议各位最好是选择其它地方建立此目录。
比如我后来就在/share/MD0_DATA/下建立的.flexget
(十)、进入.flexget目录,输入cd.flexget后回车:
(十一)、输入vi编辑命令,创建一个新的config.yml文件:
简要说明一下vi的编辑命令:
编辑模式:
i键—插入字符
a键—增加字符
x键-删除一个字符
dd键(连按两次)--删除一行
o键—增加一行
s键—替换一个字符,如果输入数字再输入s,比如5s代表替换5个字符
S键—替换一行字符
Esc键回到命令模式(所有的命令都只出现在底部):
:
wq—存盘退出(或者是shift+zz)
:
q—不存盘退出
:
q!
—强制不存盘退出,对于改错的内容不想保存退出特别有用
(十二)、config.yml文件格式如下。
Yml是Yaml格式的文件,有严格的格式缩进要求,只能使用空格键并且空格必须是双数,不能使用Tab键。
重点讲解下这个格式(flexget关键字为红色字体,不能随意变更):
第一行的tasks:
代表任务的开始,顶格开始,冒号结束
第二行的CHDBits:
是某个任务名称,可以自定义。
空两格开始,冒号结束
第三行的rss:
是PT站的RSS订阅地址。
空四格开始,rss:
和地址之间必须保留一个空格
第四行的download:
是transmission的监视地址,这个地址必须和transmission的settings.json文件中的"watch-dir"的目录要保持一致,否则无法下载。
空四格开始,download:
和后面的绝对目录之间必须保留一个空格
第五行为要使用的下载软件,这里直接就是transmission。
空四格开始,冒号结束
第六、七、八、九行:
空六格,冒号和后面的内容之间也必须保留一个空格。
如果你更改过transmission的用户和密码,那么请在第八、九行按你实际的填写
好了,这就完成一个PT站的设置了,如果有多个PT站就照如此格式写多个任务,如下图:
(十三)、接下来就要检查你写的config.yml格式的语法是否正确了,执行如下语句进行检查,如果返回如图结果即表示通过,否则会有报错信息:
如有错,要看具体的错误原因,因为返回的信息是不一样的,一般最大可能是格式的问题,比如多个空格,少个空格。
参考资料:
(十四)、进行种子下载测试,执行如下语句进行测试;
如果显示以下画面,则表示测试成功了,可以正常从PT站下载种子了(因为本人下载的种子太多,在做测试时报连接超时,所以从网上别人的文章里截取了画面):
(十五)、接下来就是配置计划任务了,输入cd/etc/config后回车
(十六)、输入crontab–e开始编辑计划任务。
这里一定要带-e参数。
(十七)、可以看到里面已经有很多任务了,在最后一行添加如下格式信息(注意空格):
0****/opt/local/bin/flexgetexecute
或
@hourly/opt/local/bin/flexgetexecute
这段语句的意思就是每小时执行一次检查,如果想每30分钟就需要改成
*/30****/opt/local/bin/flexgetexecute
PS:
1、经实际运行后发现,212P不能执行@hourly这种格式,只能写成0****这种格式。
2、由于.flexget的目录不在默认的用户主目录下,这里在写定时任务时应该改成如下格式:
0****/opt/local/bin/flexget–c/share/MD0_DATA/.flexget/config.ymlexecute
其实我发觉不论我把时间设置成多少,我的TS-212P都是一个小时左右运行一次种子检查,这点目前还没找到原因,不过问题不大。
编辑完成后shift+zz保存退出,crontab–l查看是否修改成功。
修改之后需要重启crontab,命令如下(/etc/init.d/crond.shrestart):
PS:
经实际运行后发现,212P重启后,crontab里用户自己编辑的定时语句会丢失,需要重新编辑一下。
参考资料:
http:
//en.wikipedia.org/wiki/Cron
(十八)、现在已经完成了所有的设置,你只需要登录PT站,点种子后的收藏(点亮五角星)。
注意有些类似CHDBits这种PT站,有专门的RSS下载链接,但经我测试这种专用链接在Flexget里无效,如下图:
还有下面这种带https:
//的RSS链接也无效,必须改成http:
//,否则flexget一概报错。
你可以先休息了,过一个小时左右的时间再去看看是否已经在下载了,如在下载表明前面的设置成功了,否则一条一条的对照查找原因。
(十九)、以上操作是按步骤来写的,以下是其它一些说明和操作:
1、在前期需要经常检查是否按照自己的设置运行了计划任务,可以到用户主目录下的./flexget下查看日志文件,命令如下:
cd.flexget-----进入.flexget目录
ls–lflexget.log-----以列表形式查看flexget.log文件,这样可以看到此文件的最后更新时间。
catflexget.log-----查看此文件的内容。
如果flexget是按照我们计划那样执行的,你就能看到里面每隔一个小时就有一次检查或下载记录。
查看多少时间执行一次还有一个特别的好处:
因为我们的PT站的免费种子是有时间限制的,如果我们加的太早的话浪费下载时间,需要等待;加的太晚的话下载时间又可能不够。
那我们加入rss的时间应该是flexget执行前的几分钟。
比如我的是每小时的49分左右执行,我就在45分钟左右加入rss订阅。
2、建议在电脑上安装TransmissionRemote,这样就不用每次登录NAS去查看网页版的transmission了
(二十)、定时删除已经完成的种子,此项操作会删除已经下载完成的文件,建议谨慎使用。
1、清除方法也是做成定时计划任务,先在/usr/bin/下用vi新建一个文件,文件名任意,比如transmission-cleanup.sh,加入以下语句:
transmission-remote-l|grep100%|grepDone|awk'{print$1}'|xargs-n1-J%./transmission-remote-t%-r
2、执行权限修改命令,将此文件的权限修改为755:
Chmod755transmission-cleanup.sh
3、ls–ltransmission-cleanup.sh查看权限是否是rwxr-xr-x
4、然后在/etc/config/crontab(crontab-e)里加入以下语句(注意空格):
@weekly/usr/bin/transmission-cleanup.sh
修改之后记得用/etc/init.d/crond.shrestart命令重启crontab
参考资料:
好吧基本所有的设置都完成了,这下可以真正的坐等种子自动下载了,千万别光顾着点亮五角星下载,要时常检查硬盘容量哦!
By咖啡杯里的方糖
于2014-8-5第一版
于2014-8-18修改
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Transmission Flexget 实现 RSS 自动 下载