【发布时间】:2020-01-13 16:31:35
【问题描述】:
我有带有 libtorrent、python-libtorrent 的 Ubuntu 服务器和带有 uTorrent 的本地电脑 Win10。
On Server I want create 1.torrent and start seeding it on server
On PC I want load 1.torrent to uTorrent and download it using DHT
我制作了脚本:创建 1.torrent 文件,添加到 DHT。
import libtorrent as lt
import sys, time
videoFile = "/tmp/1/1.mp4.gpg"
workingPath = "/tmp/1"
#Create torrent
f = lt.file_storage()
lt.add_files(f, videoFile)
t = lt.create_torrent(f)
t.add_node("router.utorrent.com", 6881)
t.add_node("dht.transmissionbt.com", 6881)
lt.set_piece_hashes(t, workingPath)
torrent = t.generate()
f = open("/tmp/1/1.torrent", "wb")
f.write(lt.bencode(torrent))
f.close()
#Seeding
PORT_RANGE = (6881,6891)
s = lt.session()
s.listen_on(PORT_RANGE[0],PORT_RANGE[1])
s.add_dht_router('router.utorrent.com',6881)
s.start_dht()
print "DHT start: ", s.is_dht_running()
print "DHT state: ", s.dht_state()
params = {
'save_path': workingPath,
'storage_mode': lt.storage_mode_t.storage_mode_sparse,
'ti': lt.torrent_info(torrent),
'seed_mode': True,
'paused': False,
'upload_mode':True,
'super_seeding':True
}
h = s.add_torrent(params)
print("Total size: " + str(h.status().total_wanted))
print("Name: " + h.name())
while True:
s = h.status()
msg = '\r%.2f%% complete (down: %.1f kb/s up: %.1f kB/s peers: %d) %s'
print(msg % (s.progress * 100, s.download_rate / 1000, s.upload_rate / 1000, s.num_peers, s.state))
sys.stdout.flush()
time.sleep(1)
输出是
# python 1.py
DHT start: True
DHT state: {'node-id': 'HgH\xcd\xe3\xbc\x9b\xa9\x9b\xf6\xbf\xe7E\xd9\x1d.\xd9<\x838'}
Total size: 82500767
Name: 1.mp4.gpg
100.00% complete (down: 0.0 kb/s up: 0.0 kB/s peers: 0) seeding
0.00% complete (down: 0.0 kb/s up: 0.0 kB/s peers: 0) checking_resume_data
0.00% complete (down: 0.0 kb/s up: 0.0 kB/s peers: 0) checking_resume_data
0.00% complete (down: 0.0 kb/s up: 0.0 kB/s peers: 0) checking_resume_data
....
....
....
0.00% complete (down: 0.0 kb/s up: 0.0 kB/s peers: 0) checking_resume_data
Windows pc 上的 Utorrent 状态为“正在连接对等点”
为什么我不能通过 libtorrent dht 播种 torrent?
【问题讨论】:
标签: python libtorrent