Skip to main content

An implementation of Bencode encoding in Python 3

Usage

import bencode
bencode.encode(OrderedDict((1, 2), (b'eggs', b'spam')))
bencode.decode(b'i3e')

Type mapping for encoding:

Bencode type

Python type

Dictionary

OrderedDict

List

list

Byte string

bytes

Integer

int

Type mapping for decoding:

Python type

Bencode type

dict

Dictionary

list or tuple

List

bytes

Byte string

int

Integer

If OrderedDict is passed instead of plain dict, the order will be preserved.

Compact peer encoding

This package also includes functions for ‘compact’ peer encoding as per bep 0023. Though not part of bencode itself, compact peer encoding is often used with it. Mainline DHT and most trackers encode peer information in this format.

Usage:

from bencode.misc import pack_compact_peers_list, unpack_compact_peers_list

pack_compact_peers_list((('127.0.0.1', 8080), ('127.0.0.1', 9090)))
b'\x7f\x00\x00\x01\x1f\x90\x7f\x00\x00\x01#\x82'

unpack_compact_peers_list(b'\x7f\x00\x00\x01\x1f\x90\x7f\x00\x00\x01#\x82')
(('127.0.0.1', 8080), ('127.0.0.1', 9090))

Release files for torrent-bencode 0.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for torrent-bencode 0.2
File Size Uploaded
torrent-bencode-0.2.tar.gz 2.9 kB Details

Release files / torrent-bencode-0.2.tar.gz

Download URL torrent-bencode-0.2.tar.gz
Size 2.9 kB
Tags Source
SHA-256 checksum
How to use checksums
bd04f8116776271ba007e151418276301226fb6978284bc0e20f4c55d784ca10
BLAKE2b-256 checksum
How to use checksums
dede9c6b868a63c0fca362bfa47a345c5161d2b6d2f3bf450d9862a66bd6885a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.28.1 CPython/3.7.2

Release history Release notifications | RSS feed

This release

0.2 This release

1 release file

0.1

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page