Skip to content

TonyJi/dhtspider

This branch is up to date with alanyang/dhtspider:master.

Repository files navigation

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

About

Bittorrent dht network spider

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 100.0%