Simple bencode library for python
Project description
pybencode
Simple bencode library for python
Requirements
- python 3.6, 3.7, 3.8, 3.9
Installation
pip install cpyberry-pybencode
Usage
import pybencode
pybencode.encode(256) # return b"i256e"
pybencode.encode(b"neko") # return b"4:neko"
pybencode.encode([1, 2, 3]) # return b"li1ei2ei3ee"
pybencode.encode({1: b"kuro", 2: b"sakura"})
# return b"di1e4:kuroi2e6:sakurae"
Nested lists and dicts can also be encoded.
pybencode.encode([b"cat", 1024, [b"meow", b"woof"]])
# return b"l3:cati1024el4:meow4:woofee"
pybencode.encode({1: {b"yuki": b"ghost"}})
# return b"di1ed4:yuki5:ghostee"
Decode can do the opposite of the above.
Similarly, you can decode nested list and dict.
pybencode.decode(b"5:night") # return "night"
pybencode.decode(b"i128e") # return 128
python.decode(b"di1ed4:yuki5:ghostee")
# return {1: {b"yuki": b"ghost"}}
python.decode(b"l3:cati1024el4:meow4:woofee")
# return [b"cat", 1024, [b"meow", b"woof"]]
If you want to encode the string to bencode format, you need to encode it with any character code first.
For example
string = "coppelia"
pybencode.encode(string.encode("latin-1"))
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Close
Hashes for cpyberry_pybencode-2.0.1-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5abfeb09fa73a499f29482d0efc23af8d156c809d9ca4b341a159586a9e9be0d |
|
MD5 | c531fa554e9519b7ad7de0f0e0ec1506 |
|
BLAKE2b-256 | b60741b6512fcff578862111d4146becd3f7f717f74b953d6c65f9c780362c26 |