qBittorrentBlockXunlei: 幫 qBittorrent 阻擋迅雷 跟其它吸血 bt (2024/10/8 更新)
本帖最后由 tonyhsie 于 2024-10-8 06:46 编辑[前言]
最近在 QB 內看到不少迅雷用戶,上傳了幾 G 後,它們的完成進度還是 0,擺明就是來騙吃騙喝的
上網找了一下 QB 擋迅雷腳本,但沒找到比較方便好用的,於是就自己動手寫了
主要是參考 https://zhuanlan.zhihu.com/p/511730024 以及 https://bbs.acgrip.com/forum.php?mod=viewthread&tid=3872 這兩位高手的作法
(PT 禁止使用 qBittorrent Enhanced Edition,所以不用問為什麼不用 QEE....)
[正文]
此軟體會在固定時間間隔 (預設 10 秒,可自行透過參數設定) 裡,透過 qBittorrent 的 WebUI 來獲取所有 torrent 的所有客戶端資訊
然後按照預定規則,找出迅雷及其它吸血客戶端,回報它們的 IP 給 qBittorrent 去阻擋
目前規則是
1. 該用戶進度為 0,或是從該用戶下載到的量是 0,而且用戶客戶端為 -XL*, Xunlei, 7.*, aria2, Xfplay, dandanplay, FDM, go.torrent, Mozilla, dt/torrent/*, github.com/anacrolix/torrent (devel) (anacrolix/torrent unknown), Taipei-Torrent dev, trafficConsume, hp/torrent/*, BitComet 1.92 & 1.98, xm/torrent/*, FlashGet, Unknown *, StellarPlayer *, Gopeed *, MediaGet, aD/, ADM, coc_coc_browser, FileCroc, filecxx, Folx, seanime (devel) (anacrolix/torrent *, HitomiDownloader, gateway (devel) (anacrolix/torrent *, offline-download (devel) (anacrolix/torrent *, QQDownload
2. 上古用戶端: Azureus (3.* 及以前版本: 2008/7)、Deluge (1.1.* 及以前版本: 2009/1)、qBittorrent (2.* 及以前版本: 2012/7)、TorrentStorm (最後一版: 2005/3)、Transmission (1.* 及以前版本: 2010/5)、BitComet (0.*: 2008/2))、µTorrent (1.*:2009/10)
3. 用戶端名字 < 4 個字,或用戶端含有非 ASCII 可顯示字元(µ、μ 除外),或用戶端名字類似 "GT 0.0.0.2"、"HP 0.0.0.1" 這種型式
4. 該用戶進度為 0,已上傳給該用戶 10M 以上的量
5. 已上傳給該用戶,超過種子內容大小的數據
6. 該用戶回報的進度與上傳量不成比例
7. 對於連線到同一種子的 "同一網段的所有客戶端" (如:223.241.234.* 或 ),如果客戶端的總數 >= 5 時,則同時封鎖這些客戶端,並封鎖之後新連入的同網段客戶端
8. 若同一網段下陸陸續續已有 5 個客戶端被封鎖,直接封鎖全網段
9. 在程式啟動時,以及每隔 1 天會清空所有被擋的用戶 IP,避免永久封鎖可能會造成的誤鎖
程式截圖
[使用需知]
1. 需先設定 qBittorrent 的 WebUI,從 qBittorrent 的「工具」->「選項」裡選擇「WebUI」
然後按照下圖設定,並記住你設定的埠號
2. 執行 qBittorrentBlockXunlei.exe,輸入「埠號」即可
(或在命令列下執行 qBittorrentBlockXunlei [埠號])
3. 若要停止執行,可直接關掉視窗,或按熱鍵 ctrl-c
4. 可自行設定掃描的時間間隔,語法:qBittorrentBlockXunlei [埠號]
5. 可由本機遙控遠端的 qBittorrent,語法:qBittorrentBlockXunlei [遠端位址:埠號 "帳號" "密碼"]
6. 如何確認此程式真的有作用?
可使用瀏覽器打開 http://127.0.0.1:54937/api/v2/app/preferences (54937 請自行代換成你先前設定的埠號)
這是你的 qBittorrent 設置,可在裡面搜尋 qBittorrentBlockXunlei 擋掉的任意 ip,如果有找到,表示此程式正常運作中
如果有任何想法或建議,歡迎提出來討論
源碼:https://github.com/tonyhsie/qBittorrentBlockXunlei
想问一下有 github repo 吗,方便射个星 dtlnor 发表于 2023-7-25 12:59
想问一下有 github repo 吗,方便射个星
目前沒公開,是私人 project
因為我懶得寫 readme.md
..........
tonyhsie 发表于 2023-7-25 15:32
目前沒公開,是私人 project
生草,原來如此,感謝
支持
本想安裝qbEE完事,後來接觸PT界一去不復返,qbEE被禁用很可惜
所以BT只好任憑各種吸血了 还有种方法:下载qBittorrent Enhanced Edition,用解压软件解压exe,在目录下创建profile文件夹,qbee就能以便携版启动,和qb共存
qb下pt,qbee下bt这样分开管理 說實在的,QEE 跟官方版最大差別,就是擋吸血用戶端
如果 PT 沒禁 QEE,那當然直接用 QEE 最省事
但如果 PT 禁 QEE,你也用了官方版 QB,這時候再用上 QEE 的必要性就不高了
建議可以試試我這個解決方案,相信會比開兩個 BT 軟體更輕便省事
本帖最后由 tonyhsie 于 2023-7-26 10:47 编辑
v230726
1. 程式啟動時若無法連接上 QB WebUI,會回報錯誤並中止;若是在正常執行時,突然連不上 WebUI,則會重複等待 60 秒後重新嘗試
2. 修改防吸血規則一,由「進度0而且下載量0」改成「進度0或是下載量0」
3. 修改防吸血規則二,由「進度0,已上傳 1M 以上」修改為「進度 0,已上傳 10M 以上」,放寬限制以防誤殺正常用戶端
下載連結
tonyhsie 发表于 2023-7-26 01:47
v230726
很好用,抓了很多迅雷,还有一两个FDM,就是现在迅雷很多ipv6了,还会同ip换端口。
v230728
1. 增加重設 banned_IPs 的功能,在程式啟動時,以及每隔 1 天會重設所有 banned_IPs,避免永久封鎖可能會造成的誤鎖
下載連結