bt種子具體文件結構如下:
全部內容必須都為bencoding編碼類型。
整個文件為一個字典結構,包含如下關鍵字
announce:tracker服務器的URL(字符串)
announce-list(可選):備用tracker服務器列表(列表)
creation date(可選):種子創建的時間,Unix標准時間格式,從1970 1月1日 00:00:00到創建時間的秒數(整數)
comment(可選):備注(字符串)
created by(可選):創建人或創建程序的信息(字符串)
info:一個字典結構,包含文件的主要信息,為分二種情況:單文件結構或多文件結構
1.單文件結構如下:
length:文件長度,單位字節(整數)
md5sum(可選):長32個字符的文件的MD5校驗和,BT不使用這個值,只是為了兼容一些程序所保留!(字符串)
name:文件名(字符串)
piece length:每個塊的大小,單位字節(整數)
pieces:每個塊的20個字節的SHA1 Hash的值(二進制格式)
2.多文件結構如下:
files:一個字典結構
length:文件長度,單位字節(整數)
md5sum(可選):同單文件結構中相同
path:文件的路徑和名字,是一個列表結構,如\test\test.txt 列表為l4:test8test.txte
name:最上層的目錄名字(字符串)
piece length:同單文件結構中相同
pieces:同單文件結構中相同
知道了這些就很好解析了
Parser.py http://blog.csdn.net/iloster/article/details/24363935