Yet another bencode implementation in Cython
Project description
A fast bencode implementation in Cython supports both Python2 & Python3 .
Install
pip install bencoder.pyx
Usage
from bencoder import bencode, bdecode, bdecode2
assert bencode("WWWWWW") == b'6:WWWWWW'
assert bencode(233) == b'i233e'
with open("debian-8.3.0-amd64-netinst.iso.torrent", "rb") as f:
torrent = bdecode(f.read())
print(torrent['announce'])
decoded, length = bdecode2(b'6:WWWWWWi233e')
assert decoded == b'WWWWWW'
assert length == 8
ChangeLog
Version 2.0.0
Use built-in dict instead of OrderedDict on Python >= 3.7
Drop support for Python 3.3
Fix bytes parsing when used with python-future #41
Version 1.2.1
Drop support for Python 2.6
Performance boost for bencode method. #7
Version 1.2.0
Add bdecode2 method. #6
Version 1.1.3
Performance Improvement
Fix package metainfo #3
Version 1.1.2
Support encode large int
Version 1.1.0
Use OrderedDict instaed of dict
Support encoding subclasses of dict
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
bencoder.pyx-2.0.0.tar.gz
(81.7 kB
view hashes)
Built Distributions
Close
Hashes for bencoder.pyx-2.0.0-cp37-cp37m-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 60e790ac6b0569c1052b6c348a89887bf3b316204e36b86ee8889b107a5144e7 |
|
MD5 | aebeee027a2885ec8d0f282331c69ffd |
|
BLAKE2b-256 | 15afb30b7991c0ee959caaf98cfc92d57d99a39c705b6ba807e7efe02465ac86 |
Close
Hashes for bencoder.pyx-2.0.0-cp37-cp37m-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1a16813cfc9d4b03f1f4e89b15f485b0bdac7dc7a5bdfa9fc48dc3b762af060d |
|
MD5 | 04986fbfe6b6aedd7d93a14b98fe4e19 |
|
BLAKE2b-256 | b10f1e9def358626120996e759510645d54f1b1d3a0662217fd5a215e719489b |
Close
Hashes for bencoder.pyx-2.0.0-cp37-cp37m-manylinux1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c312388f21e4025b88ce067bcdc3baf97c9033a3252d463315acddff98a1821e |
|
MD5 | b728991b2a6729ad0a3bd03a58e3d223 |
|
BLAKE2b-256 | dcbed8dfd38978790d85dfa6af5014ad5601bb73bcedbcb4f1775c1b433eab9c |
Close
Hashes for bencoder.pyx-2.0.0-cp37-cp37m-manylinux1_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f9f040e1892d9b16ffac6438eb999f9285e4b793ab8c7bc6ed370b4ecdee2cb8 |
|
MD5 | 718c1a1ecfbf8eef95bd7d8919528dc8 |
|
BLAKE2b-256 | 4f111863f34dd7081b90b235df8ea4a81b699ab8d0ecdcca6bfd113bf210309c |
Close
Hashes for bencoder.pyx-2.0.0-cp37-cp37m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 75a98bcaa0f8980951cef25eba31d9564ca32a6400443df1d2d12cf1d734172d |
|
MD5 | 4113b00bbb38c385f801dfdef909c7fa |
|
BLAKE2b-256 | 05c915db0af965d42d044b7578f9fb0ebca8a52e6681867adbb8c412bc6eb1a8 |
Close
Hashes for bencoder.pyx-2.0.0-cp36-cp36m-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 35059b1180ff6e8775e178672c5a55a981a2462ae2c01fa93de33e428de00b4c |
|
MD5 | a4a960474020f415ad4b7cfa49daed04 |
|
BLAKE2b-256 | bb51e343b037858336ba5c9e3fa147149b986d8f96635a118d71f4b3f86ef5bc |
Close
Hashes for bencoder.pyx-2.0.0-cp36-cp36m-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d47de2dbcd372006dbe7603ce005a2e2229acfe71f06de1f13d75afa1b997c4e |
|
MD5 | 3a882f9bbc972309b6b4c42cae23b82d |
|
BLAKE2b-256 | 960f837d4d8e81164735e49c91bf86ed6d90aeaf0ddd7992a903d18095cb32d1 |
Close
Hashes for bencoder.pyx-2.0.0-cp36-cp36m-manylinux1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 40e5b87eac23abb54a2b13b93aeb8ce8f206e274d571d675e0073ec449e4d2fb |
|
MD5 | 28221ecaa13ee364ebe5f6a0a973d76c |
|
BLAKE2b-256 | 88665b15d4ec54ba069838ecd9b4551b607fc91973758c7a2bf6e9b0bc36496b |
Close
Hashes for bencoder.pyx-2.0.0-cp36-cp36m-manylinux1_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | a17d3cb7b6b3420f5c4c0e902c035e9ebede9cd1f91e26ca794f8c58d405223c |
|
MD5 | 7e635fe5ecdebbf58469a489edd3fe69 |
|
BLAKE2b-256 | dc45db8d7e1c7547e9fa157da5927e10694fa248a9910e55aecb15ae13aa3d5a |
Close
Hashes for bencoder.pyx-2.0.0-cp36-cp36m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 96c549ecca68e28cd61f9b1fe20d8fc383d65290723a485fb103e86f8d0ecf5c |
|
MD5 | f95712673d0702e11d4b5f2451096842 |
|
BLAKE2b-256 | 4eab5b1bbaf12a4c6716b174eab6c4c3ded9c5b5ffe0c0de4ad61ddd01db4fe6 |
Close
Hashes for bencoder.pyx-2.0.0-cp35-cp35m-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | dbaf87ddd3701b9f1710b3d80995c42447e1e66f555fbd180a8109d07972fe82 |
|
MD5 | e0c8a54d89d774daf67a6fcc469ccbba |
|
BLAKE2b-256 | 11f5078c076e649b52dfb2b9858eb04dba960f152396d50216a864b6be19c036 |
Close
Hashes for bencoder.pyx-2.0.0-cp35-cp35m-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ab9d5ea38e8ad4b3b31cca29283ef0a53ac70876d39b93671fb46bfee7de01bd |
|
MD5 | 1e0348c1de630cbc6d4820adab3cbc93 |
|
BLAKE2b-256 | 45981cfdb21686590662dfb96864d5e1eae1e0bd6a2b71bd7167329f4c63fbff |
Close
Hashes for bencoder.pyx-2.0.0-cp35-cp35m-manylinux1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d8c5f94fc0f86864483a89b7c7544a0ef0def46e34b4ef3c11ff1b8753171ea1 |
|
MD5 | 5f434a47ad50e378432fae51277aa8cf |
|
BLAKE2b-256 | 356f23bbb7cd23ccf655b30b9d90d867f70731268406e97ca0a6810313e49cb5 |
Close
Hashes for bencoder.pyx-2.0.0-cp35-cp35m-manylinux1_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | a28def1193e8772cd693137b5d8575137aef55747d2e644fd94c83e582b40c4a |
|
MD5 | 2460a6677f6f834225ccfa1ef109d0a1 |
|
BLAKE2b-256 | 721773832744ace7126d5d74f0b829b42782bcc6633fb57a9a86c5034f48de2c |
Close
Hashes for bencoder.pyx-2.0.0-cp35-cp35m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0cc2d545de9a89a9c433623b22bc63b0cd4bb663a32d0c21d7104d0940906df9 |
|
MD5 | c63773531460f087cf9096566203bdf5 |
|
BLAKE2b-256 | 2834c6d997f6157ac953f57eb1db79cafbd859b06676436782fd08f1277ef433 |
Close
Hashes for bencoder.pyx-2.0.0-cp34-cp34m-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5784c9a0908e8921160ac58cae8acc3bec233a74056d6feda4b48b710c806020 |
|
MD5 | ba04d9f5249d7770fb88f6c4e0f4477f |
|
BLAKE2b-256 | bffc7be43bb6464bd18220582dddbdf41ebde70db7903df12eb80f0314a2a1c1 |
Close
Hashes for bencoder.pyx-2.0.0-cp34-cp34m-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 599165ef655dd97284a4f1982abb20be2850f7ba8c7c6e587a131077917e2835 |
|
MD5 | 1e9b7a0287c985bfa4585a2ac677df2c |
|
BLAKE2b-256 | a5fb0cac04f56ccc6d992ee5fc5abb7ec5bcba49431984e6294bcab2f9eb8d9e |
Close
Hashes for bencoder.pyx-2.0.0-cp34-cp34m-manylinux1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f725e7b93c17edecbf9220940f58cc4d8343cce280761eefa0d7e56cf897a4df |
|
MD5 | b920bb153add16eeb523522b0c9fb904 |
|
BLAKE2b-256 | 56817e9f0f3b37c43072898040a5806673799ebb9d9e762c4c85a54aa4f5990a |
Close
Hashes for bencoder.pyx-2.0.0-cp34-cp34m-manylinux1_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 887a6490a45d2a34aeb35db7c3d1f861005447e37377c38a7d5ac4a38847436a |
|
MD5 | 4f2e8f3a2c609ec4beccdc7c14f09e86 |
|
BLAKE2b-256 | 226ba1783675ef712db9f03417418f574275732d80593c92c2a4cc3a806049fd |
Close
Hashes for bencoder.pyx-2.0.0-cp34-cp34m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 50fcc33f0dc187f2c0dffea93982ce502aef269c141815acbddb2565ee244f74 |
|
MD5 | 561baf8ce084322466e512de73549778 |
|
BLAKE2b-256 | 25152189f40a55f329a5c585ecca800643359573bc1b3a83780fa58f246bdcd6 |
Close
Hashes for bencoder.pyx-2.0.0-cp27-cp27mu-manylinux1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3c7b1c7ff3249642d506ca4ee0731b26ab5a583f5e72cfb97ae45ac391b791dc |
|
MD5 | 193df9fcd17e399572627cf1c9f5603c |
|
BLAKE2b-256 | 0360b07ee22716588e146cd7de254886fd4e2f1ac511fc41f3c3248635cda1fb |
Close
Hashes for bencoder.pyx-2.0.0-cp27-cp27mu-manylinux1_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d5f649ba35e03387da6693e4b0cc590fa839b30637ad7dd31d35aeb8a2ed3473 |
|
MD5 | 56f685c6eecbd8e957fd210477a86f04 |
|
BLAKE2b-256 | 27d4a5615684fde48fb5f13d377d066e974cb2e9f072cd60b3c0ee5fdf3a200b |
Close
Hashes for bencoder.pyx-2.0.0-cp27-cp27m-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | af3fb5626a235e1331436da5075882993087041f29117cd755d388d96170529f |
|
MD5 | 562fd5756ab197128210d3ae92010c52 |
|
BLAKE2b-256 | c8690661d83db1493156c6f731a8fa5bb99ed759f1ab903f8003009f3753983a |
Close
Hashes for bencoder.pyx-2.0.0-cp27-cp27m-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 02e5601af74c35d1367f340513b282e5db1e759f687d16e76798701ba3c2ecaa |
|
MD5 | 08c7cfdb7d00408a188fa4c433fd8da2 |
|
BLAKE2b-256 | 3e2d3c83df37b5f1657dbe0fec9168da08ace6791da0b2fcb6e6be435731c75c |
Close
Hashes for bencoder.pyx-2.0.0-cp27-cp27m-manylinux1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1455c53537bb888ad2d27d5fd00b9ae0e6172b3e7fa1e1c460b427be831615ef |
|
MD5 | 5831c48afeb2e7688bb6e615e14ed837 |
|
BLAKE2b-256 | 66701e36c071005c5016e0d9bdedf83df3d4c671d6ceae9f421b75932bf6178c |
Close
Hashes for bencoder.pyx-2.0.0-cp27-cp27m-manylinux1_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 214ef49e77cb890fafebda1df6bb8cc605f57639e1d870abc3ec6c7a5c3dbf50 |
|
MD5 | d34cdf221e36a646ea4495d380b2ab32 |
|
BLAKE2b-256 | 240158002d4f58754ff166154cae485e8daaf2579b9d88fa7ce07aa4f8c44f3d |
Close
Hashes for bencoder.pyx-2.0.0-cp27-cp27m-macosx_10_13_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | e208151a8bd709fce8415feea34013fff4f32328b0c9313d756364af0a24a7eb |
|
MD5 | 443f6702c9f78c31bc3eaf28ab6b4bd9 |
|
BLAKE2b-256 | 483e2dadd0d6669a5e65cd3f1e3f1ce011198b49f9055f99c15f35a4aa2b9775 |
Close
Hashes for bencoder.pyx-2.0.0-cp27-cp27m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0767df1e38f57e353889351937d4cba64b655f0baf9edd269195ad78895bdf7f |
|
MD5 | 62d8be89b419b3c96332a680318d493e |
|
BLAKE2b-256 | d51ca09d1b0c2f735419096fc79b601cc7a4ffcaaeae165b24427d95ace4671f |