python 3中bencode编码的实现

torrent-bencode的Python项目详细描述


python 3中bencode编码的实现

用法

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

编码的类型映射:

Bencode typePython type
DictionaryOrderedDict
Listlist
Byte stringbytes
Integerint

解码的类型映射:

Python typeBencode type
dictDictionary
list or tupleList
bytesByte string
intInteger

如果传递的是ordereddict而不是普通dict,则订单将被保留。

压缩对等编码

该软件包还包括BEP 0023规定的“压缩”对等编码功能。虽然不是bencode本身的一部分,但它经常使用紧凑的对等编码。干线dht和大多数跟踪器以这种格式编码对等信息。

用法:

frombencode.miscimportpack_compact_peers_list,unpack_compact_peers_listpack_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))

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
ArrayList Java中的搜索字符串   另一个web应用程序的java访问会话   另一个应用程序中的活动和服务之间的java通信   java根据Json字符串类型将Json字符串转换为对象   eclipse如何解决java中的错误异常。lang.NoSuchMethodError:'java。字符串javax。摆动JOptionPane。showInputDialog(java.lang.String)'   线程“main”java中的安卓异常。lang.NoClassDefFoundError:org/codehaus/jackson/JsonParseException   java如何在安卓 emulator上显示Mat图像?使用NDK   Java在本地读取测试源文件,但在服务器上读取失败   java dowhile循环用于计算输入数字中的数字。故障排除代码   JAva初学者在编写获取成本的方法时遇到困难   java是shell游戏。我如何让物体移动,特别是在特定的曲线上,但顺序是随机的?   java如何区分两个同名的JButton   java为什么我在Spring Boot中需要一个接口?   java将文件路径插入数据库将删除\   使用InterfaceType初始化java对象   java如何部署一个分为Angular、Spring Boot和MySQL的项目?   java如何使用Symja解决不等式?