Maison >développement back-end >Tutoriel Python >实战Python实现BT种子转化为磁力链接

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

高洛峰
高洛峰original
2016-10-17 16:54:272404parcourir

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

将BT种子转换为占用空间更小,分享更方便的磁力链还是有挺大好处的。

今天咱们来看下如何将种子转换成磁力链接,方案是:利用python的bencode模块,用起来比较简单

首先要安装这个模块,安装命令:

pip install bencode

   

如果没有安装pip,请移步《详解python包管理器pip安装》

实战代码

安装完成后,我们来看下代码:

系统环境:Linux

Python环境:Python2.7

请注意python版本

bt2url.py

#! /usr/local/bin/python
# @desc python通过BT种子生成磁力链接 
# @date 2015/11/10
# @author pythontab.com
import bencode
import sys
import hashlib
import base64
import urllib
#获取参数
torrentName = sys.argv[1]
#读取种子文件
torrent = open(torrentName, 'rb').read()
#计算meta数据
metadata = bencode.bdecode(torrent)
hashcontents = bencode.bencode(metadata['info'])
digest = hashlib.sha1(hashcontents).digest()
b32hash = base64.b32encode(digest)
#打印
print 'magnet:?xt=urn:btih:%s' % b32hash

   

如何使用?

命令:

python bt2url.py test.torrent

   

结果:

magnet:?xt=urn:btih:MWXFHXOGE2UMR7WBFZYEJPM3LF2VIHNH


   


Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn