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


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

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

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

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

    1
    pip install bencode

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

    实战代码

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

    系统环境:Linux

    Python环境:Python2.7

    请注意python版本

    bt2url.py

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    #! /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

    如何使用?

    命令:

    1
    python bt2url.py test.torrent

    结果:

    1
    magnet:?xt=urn:btih:MWXFHXOGE2UMR7WBFZYEJPM3LF2VIHNH

    http://www.qytang.com/cn/list/28/397.htm
    http://www.qytang.com/cn/list/28/396.htm
    http://www.qytang.com/cn/list/28/395.htm
    http://www.qytang.com/cn/list/28/394.htm
    http://www.qytang.com/cn/list/28/393.htm
    http://www.qytang.com/cn/list/28/391.htm
    http://www.qytang.com/cn/list/28/389.htm
    http://www.qytang.com/cn/list/28/388.htm
    http://www.qytang.com/cn/list/28/362.htm
    http://www.qytang.com/cn/list/28/358.htm
    http://www.qytang.com/cn/list/28/351.htm
    http://www.qytang.com/cn/list/28/348.htm
    http://www.qytang.com/cn/list/28/340.htm
    http://www.qytang.com/cn/list/28/338.htm
    http://www.qytang.com/cn/list/28/336.htm
    http://www.qytang.com/cn/list/28/330.htm

    http://www.qytang.com

  • 相关阅读:
    Stanford机器学习笔记-10. 降维(Dimensionality Reduction)
    Stanford机器学习笔记-9. 聚类(K-means算法)
    Stanford机器学习笔记-8. 支持向量机(SVMs)概述
    Stanford机器学习笔记-7. Machine Learning System Design
    Stanford机器学习笔记-6. 学习模型的评估和选择
    Stanford机器学习笔记-5.神经网络Neural Networks (part two)
    k sum 问题系列
    正则表达式
    Manacher算法--O(n)回文子串算法
    leetcode难度及面试频率
  • 原文地址:https://www.cnblogs.com/qytang/p/5534491.html
Copyright © 2020-2023  润新知