Bittorrent dht network spider
JavaScript
Switch branches/tags
Nothing to show
Clone or download
AlanYang AlanYang
Latest commit 00355d3 May 21, 2016

Readme.md

Nodejs DHT infohash spider

develop for engiy.com(A bittorrent resource search engine) Implements DHT protocol

requirement

Node.js 6.0+

install

npm install dhtspider

Useage

'use strict'

const spider = new (require('dhtspider'))

spider.on('ensureHash', (hash, addr)=> console.log(`magnet:?xt=urn:btih:${hash}`))

spider.listen(6339)

API

Class Spider(options)

options

tableCaption

default is 600, if your server have a lot memory, increasing this value can improve crawl efficiency

bootstraps

entry of dht network, default is

[{ address: 'router.bittorrent.com', port: 6881}, {address: 'dht.transmissionbt.com',port: 6881}]

method spider.listen(port)

start spider on port

events

'unensureHash'

Got a unensured info hash, usually, there is no need to care.

'nodes'

Got nodes, invoke on find_node success

'ensureHash'

Got a ensured info hash, callback has two arguments, first is hex info hash, second is a tcp address {address: 'x.x.x.x', port: xxx} for fetch metainfo of the resource by Extension for Peers to Send Metadata Files

Online Sample Bittorrent resource search engine