0

bittorrent プロトコルについて学んでいて、よくわからない質問があります。

BEP009によると、

マグネット URI 形式

マグネット URI の形式は次のとおりです。

v1: magnet:?xt=urn:btih:info-hash&dn=name&tr=tracker-url

v2: magnet:?xt=urn:btmh:tagged-info-hash&dn=name&tr=tracker-url

info- hash 16 進数でエンコードされた情報ハッシュで、合計 40 文字です。実際の既存のリンクとの互換性のために、クライアントは base32 でエンコードされた 32 文字の情報ハッシュもサポートする必要があります。

tagged-info-hashは、新しいメタデータ形式の torrent のマルチハッシュ形式の 16 進数でエンコードされた完全な情報ハッシュです。「btmh」と「btih」の正確なトピックは、同じハイブリッド torrent を説明している場合、同じ磁石に存在する可能性があります。

マグネットリンクの例:magnet:?xt=urn:btih:407AEA6F3D7DC846879449B24CA3F57DB280DE5C&dn=ubuntu-educationpack_14+04_all&tr=udp%3A%2F%2Ftracker.opentrackr.org%3A1337%2Fannounce&tr=udp%3A%2F%2Fexplodie.org%3A6969

私が間違っている場合は訂正してください。ただし、これurn:btih:407AEA6F3D7DC846879449B24CA3F57DB280DE5Cはマグネット リンクからのものです。BEP015にリストされているようなメタデータinfo-hashを取得するには、それをデコードする必要があります。次のようなもの:bencodeddownloaded, left, uploaded, event, etc.

私の質問は、Pythonでこれをどのようにデコードするのですか?

4

3 に答える 3