最近研究了一下磁力链magnet和BT种子torrent文件之间的相互转换。其实通过torrent文件获得磁力链实现起来比较简单,但反过来并非是一个可逆的过程,磁力链转BT种子理论上来说是不可能实现的。

一个可以提供下载的磁力链,比如:magnet:?xt=urn:btih:51df6808c739174c8f264701ba94460c5238d6ce,只包含了一个有效信息,那就是种子的hash值,其它可选部分省略了。这里没有种子内部包含的文件列表,磁力链没有BT种子构成的所有基本需要。

那应该怎么转换成BT种子呢?
    实际上通过一些下载工具下载这些种子的时候,下载工具会到内部服务器的种子库里去查找,通过hash值,可以搜索出位于该服务器上的BT种子位置,然后下载这个种子。也就是说,用某一个下载工具通过磁力链magnet下载torrent文件,并不是每次都一定能下载成功。
    既然原理清楚了,我们大可以自己编写一个磁力链到BT种子的转换工具,但需要一些公开的BT种子库的接口?

目前的可用接口:

磁力链:
magnet:?xt=urn:btih:f8181597b51c157fb470e5ee236e364c6fbc2af2

btbox:
http://bt.box.n0808.com/F8/F2/F8181597B51C157FB470E5EE236E364C6FBC2AF2.torrent构造方法:取磁力链的hash部分,全部转换大写, 格式化如下http://bt.box.n0808.com/hash最前面两位/hash最后面两位/hash.torrent,注意大写!

BitComet:
http://torrent-cache.bitcomet.org:36869/get_torrent?info_hash=F8181597B51C157FB470E5EE236E364C6FBC2AF2&size=226920869&key=BC2DAAD2A0F79E0A4EEB831CBA5BD7DADB38D146
构造方法:info_hash字段是已经知道的,但是key字段的计算方法暂时还不知道,有一个人分析了算法,并封装了一个COM,感兴趣的可以看看去。http://www.cnblogs.com/UMU618/articles/2568579.html

Vuze的种子库:
http://magnet.vuze.com/magnetLookup?hash=7AMBLF5VDQKX7NDQ4XXCG3RWJRX3YKXS构造方法:7AMBLF5VDQKX7NDQ4XXCG3RWJRX3YKXS是f8181597b51c157fb470e5ee236e364c6fbc2af2的Base32编码。

PS:如果有人发现新的可以的BT种子库,请通知我一声!

根据以上提供的BT库,我编写了一个magnet转torrent文件的工具,集成了以上提到的接口。经过我个人测试,能解析成功的magnet链接还算支持比较全面,有需要的可以下载。

 
 

据磁力链获得BT种子的更多相关文章

  1. 利用迅雷提供的接口从磁力链得到bt种子文件

    本地下载工具的磁力链下载速度不给力,而百度云盘有提供离线下载服务,相当于就是直接到服务器取个链接而已.但这需要bt文件,而我只有链力链.网上搜了一下,可以从磁力链构造一个bt文件的下载地址,用pyth ...

  2. 使用C#实现DHT磁力搜索的BT种子后端管理程序+数据库设计(开源)

    使用C#实现DHT磁力搜索的BT种子后端管理程序+数据库设计(开源) 先直接上程序界面,了解整体工作流程是什么样子的,求服务器进行挂机测试,需要固定IP,空间大概需要10G左右(主要是BT种子占用空间 ...

  3. [搜片神器]使用C#实现DHT磁力搜索的BT种子后端管理程序+数据库设计(开源)

    谢谢园子朋友的支持,已经找到个VPS进行测试,国外的服务器:http://www.sosobta.com   大家可以给提点意见... 出售商业网站代码,万元起,非诚勿扰,谢谢. 联系h31h31 a ...

  4. DHT协议网络爬虫磁力链接和BT种子搜索引擎

    系统功能和用到的技术. 系统包括几个独立的部分: 使用 Python 的 Scrapy 框架开发的网络爬虫,用来爬取磁力链接和种子: 使用 PHP CI 框架开发的简易网站: 搜索引擎目前直接使用的 ...

  5. 迅雷磁力链接转BT种子工具

    种子文件目录:C:\Users\jifeng\AppData\Local\Temp\magnetex MagnetEx.exe 从迅雷5.8支持磁力链接的无视受限资源版提取 MagnetEx.exe ...

  6. [搜片神器]BT种子下载超时很多的问题分析

    继续接着第一篇写:使用C#实现DHT磁力搜索的BT种子后端管理程序+数据库设计(开源)[搜片神器] 谢谢园子朋友的支持,已经找到个VPS进行测试,国外的服务器: h31bt.org  大家可以给提点意 ...

  7. 根据hash值找到bt种子的磁力下载链

    根据hash值找到bt种子的磁力下载链- 画皮2 hash:E5757D533B3690774519E6A80021E43C03A58C0B 磁力 下载链接 如下: magnet:?xt=urn:bt ...

  8. 实战Python实现BT种子转化为磁力链接

    经常看电影的朋友肯定对BT种子并不陌生,但是BT种子文件相对磁力链来说存储不方便,而且在网站上存放BT文件容易引起版权纠纷,而磁力链相对来说则风险小一些. 将BT种子转换为占用空间更小,分享更方便的磁 ...

  9. Linux使用Aria2命令下载BT种子/磁力/直链文件 转载

    Linux使用Aria2命令下载BT种子/磁力/直链文件 博主: Rat's 发布时间:2017 年 10 月 10 日 26725 次浏览 8 条评论 1073 字数 分类:主机教程 首页 正文 分 ...

随机推荐

  1. NDK常见错误

    1.错误1: android mk文件没有定义 $ ndk-buildAndroid NDK: Your APP_BUILD_SCRIPT points to an unknown file: /cy ...

  2. 印象烟大PPT大赛

    下面为获奖人员 王志恒一等奖 姜云飞.任子仪二等奖 田正相,庄棫麟,陈德昊三等奖.

  3. 常见编程语言对REPL支持情况小结[转]

    文章转载自http://www.nowamagic.net/librarys/veda/detail/2462 最近跟一个朋友聊起编程语言的一些特性,他有个言论让我略有所思:“不能REPL的都是渣”. ...

  4. 自己写deque

    //deque /* what is a deque? In Chinese, it's called "双端队列". It's different from a queue. I ...

  5. Python之异步IO&RabbitMQ&Redis

    协程: 1.单线程运行,无法实现多线程. 2.修改数据时不需要加锁(单线程运行),子程序切换是线程内部的切换,耗时少. 3.一个cpu可支持上万协程,适合高并发处理. 4.无法利用多核资源,因为协程只 ...

  6. openwrt启动过程(脚本)

    来源:  http://wiki.openwrt.org/doc/techref/preinit_mount#first.boot 基本的openwrt启动顺序为: 1.boot loader loa ...

  7. Oberon程序设计—目录

    内        容前   言1, 什么是Oberon? 1.1 ALGOL家族 1.2 该系统2, 第一:程序 2.1 一个符号来描述的语法: 2.2练习 第一部分,符号和基本类型,分配,控制结构, ...

  8. 利用POI获取Excel中图片和图片位置

    利用POI获取Excel中图片和图片位置(支持excel2003or2007多sheet) 转自:http://blog.csdn.net/delongcpp/article/details/8833 ...

  9. java抽象类的特点

    抽象类 抽象类的特点: 1.抽象类的方法可以是抽象的,也可以是不抽象的. 2.抽象类的方法可以全是抽象的,也可以全是不抽象的. 3.有抽象方法的类必须是抽象类,或者是接口(但是接口的方法定义必须是pu ...

  10. c题 Registration system

    Description A new e-mail service "Berlandesk" is going to be opened in Berland in the near ...