Python基础项目实战:实现BT种子转化为磁力链接
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了Python基础项目实战:实现BT种子转化为磁力链接,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1905字,纯文字阅读大概需要3分钟。
内容图文
![Python基础项目实战:实现BT种子转化为磁力链接](/upload/InfoBanner/zyjiaocheng/817/30a28ce6fa2b47709c7a7ac271b5bcb5.jpg)
经常看电影的朋友肯定对BT种子并不陌生,但是BT种子文件相对磁力链来说存储不方便,而且在网站上存放BT文件容易引起版权纠纷,而磁力链相对来说则风险小一些。
将BT种子转换为占用空间更小,分享更方便的磁力链还是有挺大好处的。
今天咱们来看下如何将种子转换成磁力链接,方案是:利用python的bencode模块,用起来比较简单
首先要安装这个模块,安装命令:
pip install bencode
如果没有安装pip(安装了可以略过),看这里:
pip的安装方法。
方法一:脚本安装
$ wget https://bootstrap.pypa.io/get-pip.py
$ [sudo] python get-pip.py
方法二:源码安装:
$ curl -O https://pypi.python.org/packages/source/p/pip/pip-X.X.tar.gz
$ tar xvfz pip-X.X.tar.gz
$ cd pip-X.X
$ python setup.py install
但是安装过程可能会出现错误:
An error occurred while trying to run get-pip.py. Make sure you have setuptools or distribute installed.
出现这个错误,说明首先要安装setuptools
setuptools 安装:
wget -q http://peak.telecommunity.com/dist/ez_setup.py
python ez_setup.py
安装完setuptools后,再次源码安装就好了。
安装完成后,我们来看下代码:
系统环境:Linux
Python环境:Python2.7
请注意python版本
实战代码:
#! /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
做为一个过来人,我要告诉你请教前辈大牛真的很重要,可以让你少走很多的弯路,不要怕丢人,没面子,面子值几个钱?学到真本事才最重要。没有技能才叫真的没有面子。python技术分享,让你的前途不再迷茫。
推荐阅读:零基础学Python,越早明白这些,越快找到好工作!
内容总结
以上是互联网集市为您收集整理的Python基础项目实战:实现BT种子转化为磁力链接全部内容,希望文章能够帮你解决Python基础项目实战:实现BT种子转化为磁力链接所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。