- 2024.7.7 发现原有的bthome网站被宣布网站崩溃,搬迁到
https://www.1lou.info/
,好在上次更新实现了快速添加源的架构,因此添加新的爬虫规则并不困难,难度在于新的网站采用了cloudflare5秒盾的保护。尝试了诸多方案之后,采取了drissionpage库模拟浏览器过cloudflare - 在尝试更新的过程中,发现了之前代码的一些bug,解决过程中顺便温故而知新,颇有所得
- BtHome最早是基于bt之家的种子爬虫工具,提供了检索、下载、添加种子的功能,后续重新架构,在一定程度上实现了可以额外添加源的功能,并且添加了动漫之家源。
-
作者写BtHome的目的一方面为了满足自己的需求
-
另一方面,作者在编写的过程中学习并使用了python并发、日志、爬虫、设计模式、模块导入、自定义模块等等知识点 README.md
-
BtHome的代码仅作为一个以上方面粗浅的参考供有兴趣的使用者学习
-
鉴于部分网站需要翻墙才能够访问,因此提供了开关代理的单选框,这里的开启代理是配置python的环境使其能够连接本地的代理,而不是在本地开启代理
-
正常的代理都需要python环境和本地环境同时配置才能正常使用
-
搜索关键词由两个部分组成,一个是影视剧名称,一个是页数,目前仅有动漫之家源需要页数,如果不添加页数,默认为1
-
两者通过空格分隔,页数通过正则匹配,格式是开始页-结束页
-
如 迷宫饭 1-20
-
爬虫的层级分为种子页、字幕组、以及种子组
-
点击开始,会根据关键词搜索种子页
-
点击种子页会解析对应的字幕组
-
点击字幕组会判断解析种子
-
点击start会根据选项开始对种子文件的爬虫和处理
-
这里内置了三个选项,分别用checkBox表示是否开启,分别是下载、添加、订阅
-
订阅功能尚未完成
-
下载是指下载种子到本地
-
添加是指下载完成之后直接添加种子到qbittorrent,目前只支持qbittorent下载器,其他下载器可以自行添加api支持
-
这里提供了关键词筛选的功能,逻辑是要求种子名称需要包含筛选关键词的全部内容
-
筛选关键词会按空格分开来逐一判断是否存在
-
这里的保存位置是二级路径,添加在一级路径下共同组成完整的保存路径
-
保存路径不存在的,会直接创建
-
一级路径在config/config.yaml文件下更改,如果为空,则默认在程序根目录下创建download目录为一级目录
-
配置文件在config/config.yaml路径下,根据yaml路径编写
-
domain_list:对应Bthome的域名列表,程序会在开始发起请求判断有效域名
-
qbittorent: 对应连接qbittorrent客户端的一些参数
-
download_dir: 一次保存路径
-
subdownload_dir: 默认二级保存路径
-
proxy: python代理环境参数
- 日志文件在log文件下,包括networkLog请求相关日志,downloadLog下载相关日志
-
请不要滥用本工具进而影响bt网站的正常运行,这无论对网站本身还是动漫爱好者都是巨大的损失
-
请大家适度使用本工具,仅爬虫下载自己需要看的动漫
-
网站运营者如果有任何意见,可在本项目issue处留言
- 真挚感谢那些为bt下载有无私贡献的网站运营者