Go 分享一个 Golang 实现的 DHT 种子爬虫

shiyanhui · 2016年08月08日 · 最后由 hammer 回复于 2018年03月27日 · 8832 次阅读

主要实现了 BitTorrent DHT 协议。爬虫的原理是利用 DHT 协议监听 announce_peer 消息,然后根据获得的 metada info 下载种子。

与其他 BT 爬虫不同的是,该项目提供两种模式,标准模式和爬虫模式。标准模式完全遵循 BT DHT 官方协议,你完全可以拿它做一个标准的 DHT 组件。爬虫模式下会根据标准协议利用一些 trick 尽可能的得到更多 announce_peer 消息,从而获得更多 metadata info。

你可以用它来打造你的海盗湾,也可以进行数据挖掘。不过要注意版权和被墙的风险,因为里边包含很多限制级资源,比如色情资源。

Github:https://github.com/shiyanhui/dht

这个是利用这个库做的一个 BT search engine: http://bthub.io

打算写一系列文章介绍一下,这是第一篇 一步一步教你写 BT 种子嗅探器 - 原理篇

需要 登录 后方可回复, 如果你还没有账号请点击这里 注册