映画をよく見る友人は BT シードに精通しているはずですが、BT シード ファイルはマグネット リンクに比べて保存するのが不便で、Web サイトに 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