python:从种子文件中提取.bz2压缩文件

时间:2019-02-19 21:42:03

标签: python bittorrent bz2

我有一个.torrent文件,其中包含.bz2文件。我确信这样的文件实际上在.torrent中,因为我用utorrent提取了.bz2。

如何用python代替utorrent来做同样的事情?

我已经看到了很多用于处理python中的.torrent文件的库,但显然没有我需要的库。在我失败的尝试中,我可以提及:

import torrent_parser as tp
file_cont = tp.parse_torrent_file('RC_2015-01.bz2.torrent')

file_cont现在是字典,file_cont['info']['name']='RC_2015-01.bz2'是字典,但是如果我尝试打开文件,即

from bz2 import BZ2File
with BZ2File(file_cont['info']['name']) as f:
    what_I_want = f.read() 

然后将字典的内容(显然,我会说)解释为路径,然后我得到

No such file or directory: 'RC_2015-01.bz2'

其他尝试甚至更具破坏性。

1 个答案:

答案 0 :(得分:0)

.torrent文件只是一个metadata file,指示从何处获取数据和文件名。您无法从该文件获取文件内容。

只有成功(使用Torrent软件)将该torrent文件下载到磁盘后,您才能使用BZ2File打开它(如果格式为.bz2)。

如果要使用Python进行实际下载,我发现的唯一选择是torrent-dl,该文件已经2年没有更新了。