如何使用 curl 或者其他 http 语言下载种子库的种子(itorrents.org)

2018-07-27 17:46:28 +08:00
 yuchting

如题。

如果我把链接放入浏览器: 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

3037 次点击
所在节点    问与答
10 条回复
tomfs
2018-07-27 17:56:59 +08:00
人家挂在 cf 下面的,cf 的 anti-ddos 是几个月一个更新周期.github 有跳过 cf 的项目,nodejs+python 的,但是吧,效率不行,虽然 itorrents 的种子算全的,但是热门种子大部分还是没有,再加上 itorrents 的站长貌似开了很多磁力搜索站,itorrents 经常改版.建议另寻吧.
tomfs
2018-07-27 18:00:25 +08:00
https://github.com/Anorov/cloudflare-scrape
这是关于跳过 cf 检测的,但是我也有测试,效率真的不行,你要当生产使用就别想了,如果只是偶尔下载一个种子,还是可以试下的.
tomfs
2018-07-27 18:07:28 +08:00
我也再找转种子的,https://www.v2ex.com/t/474703
你有更好的替代方案,麻烦安利下.
yuchting
2018-07-27 18:24:21 +08:00
@tomfs
非常感谢,貌似我遇到了也解难题啊~
yuchting
2018-07-31 10:05:36 +08:00
@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
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
tomfs
2018-07-31 19:25:19 +08:00
@yuchting 很高兴与你一起交流这个冷门的问题 :)
tomfs
2018-07-31 19:28:34 +08:00
@yuchting 我就不发图了,具体看 bthub 的关于页面吧,整个 overHTTP to DHT 的流程图非常清晰,也很强大.推荐
流程图 base64:aHR0cHM6Ly9idGh1Yi5vcmcvYWJvdXQ=
yuchting
2018-08-02 10:49:01 +08:00
@tomfs
我也很高兴有人也遇到了这个问题。
其实我就是卖了了一个树莓派,插了个 2 手硬盘做了家庭下载中心,bt,电驴啊什么下一些片看,发现很多站都是提供磁力链接,自己搭建的 rtorrent 只能下载有种子的资源,不是很方便,于是就想自己写一个程序能够自动转磁力链接到种子,方便下载,后来发现其实下载不了。。。找来找去找不到办法,固有一问。

现在使用 aria2,再配合一个 GUI 界面,还可以下载百度云盘资料,已经够用了,不想折腾了,接下来就是要寻找家庭媒体播放的东西,samba 那种感觉有点不太够用。
tomfs
2018-08-02 16:41:19 +08:00
@yuchting plex 了解下

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/474748

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX