inserter.py

来自「bittorrent source by python. please enj」· Python 代码 · 共 48 行

PY
48
字号
# The contents of this file are subject to the BitTorrent Open Source License# Version 1.1 (the License).  You may not copy or use this file, in either# source code or executable form, except in compliance with the License.  You# may obtain a copy of the License at http://www.bittorrent.com/license/.## Software distributed under the License is distributed on an AS IS basis,# WITHOUT WARRANTY OF ANY KIND, either express or implied.  See the License# for the specific language governing rights and limitations under the# License.### generate a bunch of nodes that use a single contact pointusage = "usage: inserter.py <contact host> <contact port>"from utkhashmir import UTKhashmirfrom BitTorrent.RawServer_twisted import RawServerfrom BitTorrent.defaultargs import common_options, rare_optionsfrom khashmir.khash import newIDfrom random import randrangefrom BitTorrent.stackthreading import Eventimport sys, osfrom khashmir.krpc import KRPCKRPC.noisy = 1done = 0def d(n):    global done    done = done+1    if __name__=="__main__":    host, port = sys.argv[1:]    x = UTKhashmir("", 22038, "/tmp/cgcgcgc")    x.addContact(host, int(port))    x.rawserver.listen_once()    x.findCloseNodes(d)    while not done:        x.rawserver.listen_once()    l = []    for i in range(10):        k = newID()        v = randrange(10000,20000)        l.append((k, v))        x.announcePeer(k, v, d)    done = 1    while done < 10:        x.rawserver.listen_once(1)    for k,v in l:        print ">>>", `k`, v

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?