我正在使用此代码下载 .torrent 文件:
torrent = urllib2.urlopen(torrent URL, timeout = 30)
output = open('mytorrent.torrent', 'wb')
output.write(torrent.read())
生成的 mytorrent.torrent 文件不会在任何 bittorrent 客户端中打开并抛出“无法解析元文件”错误。问题显然是,虽然 torrent URL(例如http://torcache.com/torrent-file-1.torrent)以“.torrent”后缀结尾,但它是使用 gzip 压缩的,需要解压缩然后另存为一个种子文件。我已经通过在终端中解压缩文件来确认这一点:gunzip mytorrent.torrent > test.torrent
并在打开正常的 bittorrent 客户端中打开文件。
如何修改 python 以查找文件编码并弄清楚文件是如何压缩的,并使用正确的工具将其解压缩并保存为 .torrent 文件?