代码拉取完成,页面将自动刷新
同步操作将从 mktime/python-learn 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
import xmlrpclib
import libtorrent as lt
import random
import time
server = xmlrpclib.ServerProxy('http://127.0.0.1:1989')
def fetch_torrent(ses, info_hash):
print '+' * 60
info_hash = info_hash.upper()
url = 'magnet:?xt=urn:btih:%s' % (info_hash,)
print "url:", url
params = {
'save_path': 'downloads',
'storage_mode': lt.storage_mode_t(2),
'paused': False,
'auto_managed': False,
'duplicate_is_error': True
}
handle = lt.add_magnet_uri(ses, url, params)
status = ses.status()
handle.set_sequential_download(1)
down_time = time.time()
if handle.has_metadata():
info = handle.get_torrent_info()
print '\n', time.ctime(), (time.time()-down_time), 's, got', url, info.name()
print 'status', 'p', status.num_peers, 'g', status.dht_global_nodes, 'ts', status.dht_torrents, 'u', status.total_upload, 'd', status.total_download
meta = info.metadata()
print meta
return meta
else:
print "no metadata"
ses.remove_torrent(handle)
print '+' * 60, '\n'
if __name__ == '__main__':
r = random.randrange(10000, 50000)
ses = lt.session()
ses.listen_on(r, r+10)
ses.add_dht_router('router.bittorrent.com',6881)
ses.add_dht_router('router.utorrent.com',6881)
ses.add_dht_router('dht.transmission.com',6881)
ses.add_dht_router('70.39.87.34',6881)
ses.start_dht()
while True:
info_hash = server.get_hash().upper()
fetch_torrent(ses, info_hash)
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。