如题。
如果我把链接放入浏览器: https://itorrents.org/torrent/B415C913643E5FF49FE37D304BBB5E6E11AD5101.torrent 是可以跳转下载的
我是用 curl ( wget )直接下载:
curl https://itorrents.org/torrent/B415C913643E5FF49FE37D304BBB5E6E11AD5101.torrent
直接就是 503,使用 chrome 查看头部,然后使用 wget 模拟,无效:
C:\xxx>wget --no-check-certificate -U "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.99 Safari/537.36" --header="Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8" --header="Cookie: __cfduid=d858b50be09e77a0ed1f2eafd25de20261532600128; _ga=GA1.2.1107172433.1532600134; _gid=GA1.2.1435366109.1532600134; cf_clearance=8af637566d06a729bbc6e48cd26390c619ddf592-1532669773-3600" -np -r https://itorrents.org/torrent/B415C913643E5FF49FE37D304BBB5E6E11AD5101.torrent
SYSTEM_WGETRC = c:/progra~1/wget/etc/wgetrc
syswgetrc = c:/progra~1/wget/etc/wgetrc
--2018-07-27 16:53:07-- https://itorrents.org/torrent/B415C913643E5FF49FE37D304BBB5E6E11AD5101.torrent
Resolving itorrents.org... 104.24.12.55, 104.24.13.55
Connecting to itorrents.org|104.24.12.55|:443... connected.
WARNING: cannot verify itorrents.org's certificate, issued by `/C=GB/ST=Greater Manchester/L=Salford/O=COMODO CA Limited/CN=COMODO Domain Validation Legacy Server CA 2':
Unable to locally verify the issuer's authority.
WARNING: certificate common name `ssl392091.cloudflaressl.com' doesn't match requested host name `itorrents.org'.
HTTP request sent, awaiting response... 503 Service Temporarily Unavailable
2018-07-27 16:53:08 ERROR 503: Service Temporarily Unavailable.
有什么方法可以让我用 wget 或者 curl 直接下载到磁力链接的种子么?
PS,我曾经在 v 站找到一个网站可以,但是发现没有用于是发了 issue: https://github.com/wuhaoworld/torrent2magnet/issues/1
1
tomfs 2018-07-27 17:56:59 +08:00
人家挂在 cf 下面的,cf 的 anti-ddos 是几个月一个更新周期.github 有跳过 cf 的项目,nodejs+python 的,但是吧,效率不行,虽然 itorrents 的种子算全的,但是热门种子大部分还是没有,再加上 itorrents 的站长貌似开了很多磁力搜索站,itorrents 经常改版.建议另寻吧.
|
2
tomfs 2018-07-27 18:00:25 +08:00
https://github.com/Anorov/cloudflare-scrape
这是关于跳过 cf 检测的,但是我也有测试,效率真的不行,你要当生产使用就别想了,如果只是偶尔下载一个种子,还是可以试下的. |
3
tomfs 2018-07-27 18:07:28 +08:00
我也再找转种子的,https://www.v2ex.com/t/474703
你有更好的替代方案,麻烦安利下. |
5
yuchting OP @tomfs
我已经解决了我的问题,仔细研究了一下磁力链接的原理,还有 BT 下载的原理,发现是 tracker 地址比较重要。 然后就是使用 aria2c,然后增加很多额外的 tracker,就能正常下载到种子。 可以直接在磁力链接后面加 tracker 地址: ''' aria2c -d ./ --bt-metadata-only=true --bt-save-metadata=true --listen-port=6881 "magnet:?xt=urn:btih:9f9165d9a281a9b8e782cd5176bbcc8256fd1871&dn=ubuntu-16.04.1-desktop-amd64.iso&tr=udp%3A%2F%2Ftracker.leechers-paradise.org%3A6969&tr=udp%3A%2F%2Fzer0day.ch%3A1337&tr=udp%3A%2F%2Fopen.demonii.com%3A1337&tr=udp%3A%2F%2Ftracker.coppersurfer.tk%3A6969&tr=udp%3A%2F%2Fexodus.desync.com%3A6969&tr=udp%3A%2F%2Feddie4.nl%3A6969&tr=udp%3A%2F%2Ftracker.pirateparty.gr%3A6969&tr=udp%3A%2F%2Fopentrackr.org%3A1337&tr=udp%3A%2F%2Ftracker.zer0day.to%3A1337" ''' 但是这个 tracker url 需要编码,于是我是用了 aria2c 的 RPC 模式 daemon,在配置文件中加入大量的 tracker 地址。然后让他去下载种子,发现很快就能下载好。 tracker 的地址: https://github.com/ngosang/trackerslist |
6
tomfs 2018-07-31 19:24:16 +08:00
@yuchting 恭喜,不过 aria2c 是去 dht 取种子的,没拥有这个资源的 peer 或者资源块不完整是传输不过来种子的.具体可以参考 Vuze 的代码,
我最后放弃 dht 了,测试了大部分公开的种子库,最后选用 BTHUB 的 overHTTP to DHT 方案解决磁力链接解析种子,运行了几天,实测转换效率在 95%以上,就算是死链的 magnet URI,也能获取到种子 具体可以参考 https://github.com/Jackett/Jackett/issues/1063 |
8
tomfs 2018-07-31 19:28:34 +08:00
@yuchting 我就不发图了,具体看 bthub 的关于页面吧,整个 overHTTP to DHT 的流程图非常清晰,也很强大.推荐
流程图 base64:aHR0cHM6Ly9idGh1Yi5vcmcvYWJvdXQ= |