欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

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

 更新時間:2017年08月29日 11:53:29   作者:NickWar  
這篇文章主要介紹了Python實現(xiàn)解析Bit Torrent種子文件內(nèi)容的方法,結(jié)合實例形式分析了Python針對Torrent文件的讀取與解析相關(guān)操作技巧與注意事項,需要的朋友可以參考下

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

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

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

保存成py后綴的,直接運行

import re
def 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 s
def 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 data
def 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 data
if __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編碼格式保存,否則中文會亂碼或無法編譯

PS:這里再為大家推薦一款相關(guān)的在線工具供大家參考使用:

在線BT種子torrent/磁性鏈接在線轉(zhuǎn)換工具:
http://tools.jb51.net/aideddesign/bt2mag

更多關(guān)于Python相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Python文件與目錄操作技巧匯總》、《Python文本文件操作技巧匯總》、《Python URL操作技巧總結(jié)》、《Python數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Python函數(shù)使用技巧總結(jié)》、《Python字符串操作技巧匯總》及《Python編碼操作技巧總結(jié)

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

相關(guān)文章

  • python調(diào)用c++返回帶成員指針的類指針實例

    python調(diào)用c++返回帶成員指針的類指針實例

    今天小編就為大家分享一篇python調(diào)用c++返回帶成員指針的類指針實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-12-12
  • Python中的enum的使用方法

    Python中的enum的使用方法

    這篇文章主要介紹了Python中的enum的使用方法,文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價值,需要的小伙伴可以參考一下,希望對你的學(xué)習(xí)有所幫助
    2022-08-08
  • Python中元組的概念及應(yīng)用小結(jié)

    Python中元組的概念及應(yīng)用小結(jié)

    Python中的元組和列表很相似,元組也是Python語言提供的內(nèi)置數(shù)據(jù)結(jié)構(gòu)之一,可以在代碼中直接使用,這篇文章主要介紹了Python中元組的概念以及應(yīng)用,需要的朋友可以參考下
    2023-01-01
  • 協(xié)程Python 中實現(xiàn)多任務(wù)耗資源最小的方式

    協(xié)程Python 中實現(xiàn)多任務(wù)耗資源最小的方式

    協(xié)程是 Python 中另外一種實現(xiàn)多任務(wù)的方式,只不過比線程更小,占用更小執(zhí)行單元(理解為需要的資源)。這篇文章主要介紹了協(xié)程Python 中實現(xiàn)多任務(wù)耗資源最小的方式,需要的朋友可以參考下
    2020-10-10
  • 詳解pygame捕獲鍵盤事件的兩種方式

    詳解pygame捕獲鍵盤事件的兩種方式

    這篇文章主要介紹了詳解pygame捕獲鍵盤事件的兩種方式,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-04-04
  • python 讀取.csv文件數(shù)據(jù)到數(shù)組(矩陣)的實例講解

    python 讀取.csv文件數(shù)據(jù)到數(shù)組(矩陣)的實例講解

    今天小編就為大家分享一篇python 讀取.csv文件數(shù)據(jù)到數(shù)組(矩陣)的實例講解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-06-06
  • python 3.74 運行import numpy as np 報錯lib\site-packages\numpy\__init__.py

    python 3.74 運行import numpy as np 報錯lib\site-packages\numpy\_

    這篇文章主要介紹了python 3.74 運行import numpy as np 報錯lib\site-packages\numpy\__init__.py,原來需要更新一下numpy即可
    2019-10-10
  • 關(guān)于networkx返回圖的鄰接矩陣問題

    關(guān)于networkx返回圖的鄰接矩陣問題

    這篇文章主要介紹了關(guān)于networkx返回圖的鄰接矩陣問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-12-12
  • Python3 XML 獲取雅虎天氣的實現(xiàn)方法

    Python3 XML 獲取雅虎天氣的實現(xiàn)方法

    下面小編就為大家分享一篇Python3 XML 獲取雅虎天氣的實現(xiàn)方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-02-02
  • Python 測試框架unittest和pytest的優(yōu)劣

    Python 測試框架unittest和pytest的優(yōu)劣

    這篇文章主要介紹了Python 測試框架unittest和pytest的優(yōu)劣,幫助大家更好的進(jìn)行python程序的測試,感興趣的朋友可以了解下
    2020-09-09

最新評論