python DHT爬虫学习笔记


以下内容对学习python 写 DHT爬虫很有帮助,我的爬虫已经写出来了。单是爬磁力链只需要几十行代码就搞定,不超过30行。但是有好多都是不能下载的,奇怪。。。还有我是内网测试的,内网用户设置端口映射还是不够的,如果路由器支持的话,还要启用dmz主机。路过的朋友,有不懂的欢迎联系我一起交流 :)

 

http://www.open-open.com/lib/view/open1408952825697.html
使用 libtorrent 的python绑定库实现一个dht网络爬虫,抓取dht网络中的磁力链接。//这篇文章好像容易实现。https://github.com/blueskyz/DHTCrawler //源文件下载地址
https://github.com/blueskyz/DHTCrawler/blob/master/collector.py

https://my.oschina.net/hopez/blog/305538 //用户评论

http://www.au92.com/archives/P-y-t-h-o-n-da-jian-B-T-zi-yuan-sou-suo-zhan-si.html
Python搭建BT资源搜索站(四)
http://www.au92.com/category/project/ //这个有5大章节

貌似 libtorrent python 更容易懂

/*

http://stackoverflow.com/questions/32866890/creating-daemon-using-python-libtorrent-for-fetching-meta-data-of-100k-torrents

libtorrent session add_dht_router
session.start_dht()
session.start_lsd()
session.start_upnp()
session.start_natpmp()

http://www.tuicool.com/articles/Z36nauv
磁力链接是如何实现下载的?

*/ 这两篇文章有两同的地方。

http://outofmemory.cn/code-snippet/16867/libtorrent-from-magnet-link-produce-torrent
libtorrent中从magnet link生成torrent

http://blog.csdn.net/u5a75/article/details/24345359
Python libtorrent提取种子文件中的信息

http://www.rasterbar.com/products/libtorrent/reference-Alerts.html#dht-announce-alert
http://www.njliaohua.com/lhd_8l7m0828xz6msol1o411_1.html
libtorrent API 文档(中文版)
http://www.libtorrent.org/
http://www.libtorrent.org/reference.html

http://download.csdn.net/detail/q6115759/9673195
python 编写的DHT Crawler 网络爬虫 下载

https://www.v2ex.com/t/253094
请问有没有使用过 Python 的 libtorrent 库的前辈?


python-libtorrent-0.16.10.win32 这些第3方包去哪里下载?
https://sourceforge.net/projects/libtorrent/files/py-libtorrent/

软件包: python-libtorrent (0.16.17-2) //原来带有rasterbar字样,就是源码包
http://packages.tanglu.org/zh-cn/bartholomea/python-libtorrent

python-libtorrent-rasterbar


安装问题:

libtorrent的一个问题 //有人用msi方式安装 装了python-libtorrent-0.16.10.win32.msi
http://bbs.csdn.net/topics/390890988

boost 1.56.0 编译及使用
http://www.cnblogs.com/zhcncn/p/3950477.html

不要bjam了,让python与boost更加自由的混搭
https://my.oschina.net/pingf/blog/78924

windows下使用gcc编译boost库
http://gas17gas.iteye.com/blog/1361188

基础研究--libtorrent库的使用
http://blog.csdn.net/amy_1007/article/details/6541631


使用WireShark进行磁力链接协议分析
http://www.tuicool.com/articles/nQJruma

通过bt种子文件获取 dht节点:

请问一下,在使用BT下载时如何判断自己是通过Tracker还是DHT?
http://tieba.baidu.com/p/2957763500
//磁力链仅需要目标文件的HASH值,就能通过DHT网络和PEX技术在互联网上找到此文件

通过磁力链接下载的种子是从哪儿来的?
https://www.zhihu.com/question/29473431/answer/133441430
//利用种子下载资源需要服务器BT Tracker,服务器地址保存在种子文件中

site:stackoverflow.com 或者可以找到相关代码作参考

 

 

 

 

 

 

http://www.cnblogs.com/huangxie/p/5550680.html
python语言磁力搜索引擎源码公开,基于DHT协议

 

 

 

dht爬虫 dht客户端
dht爬虫 dht服务端

python开发的 dht网络爬虫
https://my.oschina.net/hopez/blog/305538

发布一个DHT BT资源爬虫
http://cnodejs.org/topic/5721610c35af8a704195f4e4

用Python教你如何“养”一只DHT爬虫
http://developer.51cto.com/art/201402/430007.htm

DHT 公网嗅探器实现(DHT 爬虫)
http://www.tuicool.com/articles/YvqEfm2

DHT爬虫:18.4GB种子分析小记
http://www.freebuf.com/articles/database/101110.html

开发一个像btbook.net这样的搜片神器
http://www.it165.net/pro/html/201403/10303.html

 

 

 


取种子都是从torrage.com之类的种子缓存站点取,这些站点提供了种子列表
http://www.cppblog.com/kevinlynx/archive/2013/07/20/201994.html

请问如何通过 Torrent Hash 下载 torrent 文件?
https://www.v2ex.com/t/148244 //获取hash值即是获取到磁力链。貌似还要下将“磁力链接转换为种子”再下载,之后获取种子文件里面的信息。

Python将BT种子文件转换为磁力链的两种方法
http://www.au92.com/archives/P-y-t-h-o-n-jiang-B-T-zhong-zi-wen-jian-zhuan-huan-wei-ci-li-lian-de-liang-zhong-fang-fa.html //一般都是读BT文件,获取里面的信息。简单来说,就是选中BT种子,右键选择以文本文件.txt打开方式差不多。

使用Python实现BT种子和磁力链接的相互转换
http://www.jb51.net/article/74584.htm

磁力链接转换为BT种子方法
http://blog.sina.com.cn/s/blog_0446dba80101d8ye.html

【P2P网络】磁力链接转换为种子文件 magnet to torrent
http://blog.csdn.net/xxxxxx91116/article/details/7971134

[转]通过 BT 种子 Hash 值从 BitComet 服务器上下载种子文件
http://blog.sina.com.cn/s/blog_75fd00010100vsfv.html

根据磁力链导出BT种子
http://www.codeclip.com/204.html
http://www.cnblogs.com/cpper-kaixuan/p/3532694.html?utm_source=tuicool&utm_medium=referral //内含工具下载

请问如何通过 Torrent Hash 下载 torrent 文件?
https://www.v2ex.com/t/148244

 


后续我将结果放入db,外加用tornado做一个简单的查询界面
http://www.jb51.net/article/81188.htm //tornado是什么,有待查证。

Python学习笔记(3):Python DHT爬虫程序
http://blog.sina.com.cn/s/blog_3bf6f3700102w30m.html //就上载别人的源码,就开始爬了..他运气真是好,没有大把的错误提示

一步一步教你写BT种子嗅探器-原理篇
http://blog.csdn.net/shiyanhui66/article/details/52168770 //Go编程语言

python之bt种子,dht网络共享热门资源
http://blog.csdn.net/u014649204/article/details/41387081

开博第一篇:DHT 爬虫的学习记录
http://www.cnblogs.com/xiejc/p/3727229.html

用Python教你如何“养”一只DHT爬虫
http://developer.51cto.com/art/201402/430007.htm

dht 磁力源代码共享, python 语言(不了解请参看磁力百科)
https://www.v2ex.com/t/300870 //里面有说到解释种子
http://www.tuicool.com/articles/2u26fq7 //同上,但是代码可读性高些。

python通过info下载BT种子并分析文件保存到数据库
http://www.oschina.net/code/snippet_1045335_38278 //再通过一个基于距离关系的查找算法,就可以实现不用挨个遍历就找到特定的节点

http://www.cnblogs.com/bymax/p/4971116.html
用来比较两个节点id或者节点id和infohash之间的距离

计算时,从种子文件info字段开始(不包含”info”这四个字节),一直到nodes字段为止(不包含”nodes”这5个字节和nodes前边表示nodes字段长度的”5:”这两个字节)
http://www.tuicool.com/articles/3M7v6rI

什么是NodeID和InfoHash
http://www.cnblogs.com/moasd87/p/5573635.html //从这篇文章得出,节点ID和infohash算法都是一样的,一样是20字节长度。只不过叫法不一样。用户就叫节点ID,资源就叫hash值

一个简单的dht种子爬虫
http://www.ren1.tk/2015/04/10/dht_bug/ //使用python的set类型可以非常方便的进行去重。在yahoo搜索:dht爬虫。发现了该网站

在使用find_node方法之前,我们需要加入到dht网络当中。如何加入dht网络呢?我们可以向网络上那些公共的节点发送find_node请求,这样,那些公共节点就会给我们回复一些节点的信息,这样我们就可以获取到一些节点,然后我们继续对获取到的这些节点发送find_node请求,从而认识更多的节点。当认识这些节点后,这些节点也会认识我们自身,所以这些节点在调用get_peers方法和announce_peer方法时,就会发送通知给我们,而我们接收到这些信息后,就可以把这些infohash记录下来。然后循环这个过程,我们就可以不断的获取到很多infohash。

P2P中DHT网络爬虫
http://www.cppblog.com/kevinlynx/archive/2013/05/19/200410.html

http://codemacro.com/2013/05/19/crawl-dht/ //听说这个作者写得很全面

gayhub: https://github.com/beilunyang/dhtCrawler //他们的代码通常都会保存或上传到这网站

http://www.oschina.net/question/1043184_2152410
DHT网络必须是你先认识一个已知的节点。然后这个节点会告诉你他认识哪些节点

https://www.zhihu.com/question/28235205
也就是说,它必须要通过*某种*途径来获得一些已知的节点。

有什么 dht 的入门资料?

http://www.torrentdownloads.me/ //种子下载站


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM