国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

Python實(shí)現(xiàn)解析Bit Torrent種子文件內(nèi)容的方法

2020-01-04 16:50:04
字體:
供稿:網(wǎng)友

本文實(shí)例講述了Python實(shí)現(xiàn)解析BitTorrent種子文件內(nèi)容的方法。分享給大家供大家參考,具體如下:

有很多種子文件,有時候記不清里面都是什么東西,又不想一個一個的拖放到迅雷或BT軟件里頭看,

上網(wǎng)查了一下Python的腳本,自己也稍微修改了一下,代碼如下,粘貼到文本編輯器中:

保存成py后綴的,直接運(yùn)行

import redef tokenize(text, match=re.compile("([idel])|(/d+):|(-?/d+)").match): i = 0 while i < len(text):  m = match(text, i)  s = m.group(m.lastindex)  i = m.end()  if m.lastindex == 2:   yield "s"   yield text[i:i+int(s)]   i = i + int(s)  else:   yield sdef decode_item(next, token): if token == "i":  # integer: "i" value "e"  data = int(next())  if next() != "e":   raise ValueError elif token == "s":  # string: "s" value (virtual tokens)  data = next() elif token == "l" or token == "d":  # Container: "l" (or "d") values "e"  data = []  tok = next()  while tok != "e":   data.append(decode_item(next, tok))   tok = next()  if token == "d":   data = dict(zip(data[0::2], data[1::2])) else:  raise ValueError return datadef decode(text): try:  src = tokenize(text)  data = decode_item(src.next, src.next())  for token in src: # look for more tokens   raise SyntaxError("trailing junk") except (AttributeError, ValueError, StopIteration):  raise SyntaxError("syntax error") return dataif __name__ == "__main__":#需要讀取的文件名稱放到這里 data = open("The_Shawshank_Redemption.torrent", "rb").read() torrent = decode(data) myfile = file("testit.txt", 'w') a = u'文件名稱'.encode('gbk') b = u'文件大小'.encode('gbk') print "%s /t %s /n" % (a,b) for file in torrent["info"]["files"]:  print "%s /t %d Mb " % ("/".join(file["path"]), file["length"]/1024/1024)  print "-----------------------------------------------------------------"

注意要保存成Utf-8格式的文件,不能使用ASCII編碼格式保存,否則中文會亂碼或無法編譯

希望本文所述對大家Python程序設(shè)計(jì)有所幫助。

發(fā)表評論 共有條評論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 山丹县| 关岭| 牟定县| 孝昌县| 五华县| 会同县| 婺源县| 苗栗市| 怀远县| 嵩明县| 广灵县| 朝阳市| 瑞昌市| 屏南县| 通山县| 奈曼旗| 略阳县| 中方县| 山东| 夏津县| 福鼎市| 林口县| 永宁县| 北流市| 满城县| 湖州市| 咸丰县| 皋兰县| 和林格尔县| 达拉特旗| 唐河县| 冕宁县| 永仁县| 安仁县| 南和县| 齐齐哈尔市| 西昌市| 景德镇市| 北流市| 沈丘县| 北流市|