Flexget插件,增强对NexusPHP的过滤
过滤条件包括种子优惠信息(free等)、做种者情况、下载者情况
更多插件:IO过高时停止任务插件
免责声明
本插件会爬取details.php页面,请将参数限制到合理的范围,减轻对服务器负担
本插件已尽量减轻服务器负担,因本插件造成账号封禁等损失,请自行承担后果
建议 将RSS条目限制在20条以内,将Flexget运行频率设置在10分钟以上。
如果不想对人数进行过滤,不建议设置seeders和leechers参数。
运行环境
安装插件
- 下载插件 nexusphp.py
- 在Flexget配置文件夹下新建plugins文件夹,例如:
~/.flexget/plugins/ # Linux
C:\Users\<YOURUSER>\flexget\plugins\ # Windows
再次注意plugins文件夹和config.yml处在同一级目录下,例如:
/.flxget
┕━config.yml
┕━plugins
┕━nexusphp.py
- 将插件拷贝至plugins
- 若启用了Web-UI或守护进程,则重启flexget重新加载配置
使用
- 编辑flexget配置文件,添加nexusphp选项,按照需要进行配置
简单配置
nexusphp: cookie: 'a=xxx; b=xxx' # 必填 discount: # 优惠信息 选填 - free
完整配置
nexusphp: cookie: 'a=xxx; b=xxx' # 必填 discount: # 优惠信息 选填 - free - 2x - 2x50% - 2xfree - 50% - 30% seeders: # 做种情况 选填(兼容性较差不建议使用) min: 1 max: 2 leechers: # 下载情况 选填(兼容性较差不建议使用) min: 10 max: 100 max_complete: 0.8 left-time: 1 hours # 优惠剩余时间 选填 hr: no # 是否下载HR 选填 adapter: # 站点适配器,自行适配站点,参考最下方常见问题 选填 free: free 2x: twoup 2xfree: twoupfree 30%: thirtypercent 50%: halfdown 2x50%: twouphalfdown comment: no # 在torrent注释中添加详情链接 选填 user-agent: xxxxxx # 浏览器标识 选填 remember: yes # 记住优惠信息 选填 请勿随意设置
- 为rss的other_fields字段添加link属性
rss: url: https://www.example.com/rss other_fields: [link]
- 启动flexget
flexget execute
# 如果仅仅想要测试而不下载,可以添加 --test 参数
flexget --test execute详细配置
cookie网站cookie 必须填写discount优惠类型 默认不限制优惠类型。
列表类型,Flexget会只下载含有列表内优惠类型的种子。
有效值:free 2x 2x50% 2xfree 50% 30%
注意:x为英文字母seeders做种情况 做种人数超出范围的,Flexget将不会下载注意:此选项兼容性较差min最小做种人数。整数,默认不限制max最大做种人数。整数,默认不限制
leechers下载情况 下载人数超出范围的,Flexget将不会下载注意:此选项兼容性较差min最小下载人数。整数,默认不限制max最大下载人数。整数,默认不限制
max_complete下载者中最大完成度 超过这个值将不下载。 小数,范围0-1.0,默认为1left-time最小剩余时间 当实际剩余时间小于设置的值,则不下载。 时间字符串,例如3 hours、10 minutes、1 days。 例如设置1 hours,优惠剩余59分钟,那么就不下载。默认不限制hr是否下载HR种 默认 yes
yes会下载HR,即不过滤HRno不下载HR
adapter站点适配器 站点不兼容时可自定义,具体参考 判断站点以及适配站点comment在torrent注释中添加详情链接
yes在torrent注释中添加详情链接,方便在BT客户端查看no默认值
user-agent浏览器标识 默认为Google浏览器remember记住优惠信息 不建议设置为 no,因为会增大站点压力。默认 yes
完整配置示例
免费热种
tasks: my-free-task: rss: url: https://www.example.com/rss.xml other_fields: - link nexusphp: cookie: 'a=xxx; b=xxx' discount: - free - 2xfree download: ~/flexget/torrents/
热种
tasks: my-hot-task: rss: url: https://www.example.com/rss.xml other_fields: - link nexusphp: cookie: 'a=xxx; b=xxx' seeders: min: 1 leechers: min: 20 download: ~/flexget/torrents/
避免HR
tasks: no-hr-task: rss: url: https://www.example.com/rss.xml other_fields: - link nexusphp: cookie: 'a=xxx; b=xxx' hr: no download: ~/flexget/torrents/
常见问题
我的python版本是2.X如何使用?
本插件只支持Python 3.X或Python 2.7版本,其他版本不可用,请卸载Flexget后使用Python3重装
pip uninstall flexget # 卸载 pip3 install flexget # 使用pip3安装
目前支持哪些站点
如果站点禁止使用脚本爬虫,应立即停止使用本插件
- 任何未修改关键结构的nexusphp站点
- PTH
- MT(站点安全性较高,ip或浏览器变动可能无法访问)
- OB
- Sky
- School
- U2
- CHD
- TJU(禁止脚本,请勿使用)
- SSD
- OpenCD
- TTG(不支持人数筛选)
- FRDS
- Dream
- HDC
- LemonHD
如何判断站点是否支持
确认cookie正确,还是提示 Can't access the site. Your cookie may be wrong!
某些站点安全性要求较高,ip或浏览器变动时无法使用cookie访问,需要重新登录。
解决办法:设置 user-agent 参数与浏览器相同,查看浏览器user-agent的方法自行搜索,并保证登录ip与使用Flexget相同。
站点启用了Cloudflare五秒盾无法获取信息
当触发Cloudflare五秒盾通常有以下提示:
NexusPHP._get_info: 503 Server Error: Service Temporarily Unavailable for url
解决方案也很简单,可以考虑使用Flexget官方内置的插件cfscraper
- 首先需要安装依赖
- 然后启用
注意!绕过站点安全机制可能有风险,自行决定是否使用
