您好我有一个错误,我尝试过无法管理
有问题的代码就是这个功能
def get_peer_info_from_magnet( magnet, ports, opt ):
ses = lt.session()
ses.listen_on( ports[0], ports[1] )
ses.set_download_rate_limit( opt.download_rate * 1024 )
ses.set_upload_rate_limit( opt.upload_rate * 1024 )
h = lt.add_magnet_uri( ses, magnet, {
'save_path': opt.save_path,
'storage_mode': lt.storage_mode_t.storage_mode_sparse,
'seed_mode': True,
#'tracker_url': opt.tracker_url,
'paused': False
} )
产生错误
Traceback (most recent call last):
File "/usr/lib/python2.6/multiprocessing/process.py", line 232, in _bootstrap
self.run()
File "magnet_info.py", line 45, in run
self._fetchData( magnet )
File "magnet_info.py", line 54, in _fetchData
pi = get_peer_info_from_magnet( magnet, ports, self.options )
File "magnet_info.py", line 140, in get_peer_info_from_magnet
'paused': False
KeyError: 'auto_managed'
我在libtorrent文档中查找了这个错误,发现了一个方法set_upload_mode()看起来很有希望,但我要么没有正确使用它,要么它不是正确的路径。
感谢您的帮助
答案 0 :(得分:1)
libtorrent似乎希望您传入auto_managed
参数。根据错误,这可能是由于您传入的'paused': False
参数;你可能需要通过'auto_managed': True
这个,虽然我没有自己使用libtorrent,所以我不确定。您可能还想尝试删除'paused': True
,看看是否有效。
仔细观察后,在libtorrent中looks like add_magnet_uri()
is deprecated。相反,您只需调用add_torrent()
并使用磁铁URL传递url
参数。你可能想尝试一下。