Ubuntu 14.04 64bit上磁力链爬虫dht部署指南

首先声明:

下面的源码包改编来自github上老太太写的一个"史上最简单的DHT爬虫“项目:

https://github.com/laomayi/simDHT

相关源码在附件源码包dht这个文件夹中,这个源码使用python实现,需要使用到mysql数据库.

下面是源码目录下的文件,比较简洁,log文件是刚才运行时创建的.

源码包位于

为此我们需要先搭建一个LNMP环境, 或者更简单点,只安装一个MySQL数据库.从dht.py源码我们得知爬虫会将爬取结构输入到mysql中,为此我们先要在mysql中创建一个bt数据库,在其中创建两个InnoDB数据表bt_main_new,torrentdetail,数据库的用户名是bt_user,密码是5MKDfxmhmQDbSf,我们可以根据自己的需要在dht.py中的Master类中修改为我们的用户名和密码,为了简单,我这里都改为root好了,因为搭建LNMP时,我的MySQL用户名和密码就都设为root了.同时将数据库名由bt改为dht.vim dht.py修改上述3处地方,改数据库为dht, 用户名和密码为root.

为了后续管理数据库方便,我们可以是Navicat for MySQL linux版本来访问数据库.

下面开始创建相关表格create database dht;use bt;show tables;使用dht目录下面的sql脚本来分别创建这两个数据表source /home/taoyx/program_develop/dht/bt_main_new.sql;source /home/taoyx/program_develop/dht/TorrentDetail.sql;exit;

接着安装python下面的MySQL模块在python环境下面,默认没有安装MySQLdb包,为此下面开始安装.从官网下面MySQL for Python源码包wget 或者git clone https://github.com/farcepest/MySQLdb1.git从源码编译,详见下面的参考文献.这里不详述了.或者为了快速方便直接在Ubuntu下面使用

sudo apt-get install python-mysqldb

在CentOS上使用sudo yum install MySQL-python然后,在命令行终端开启脚本开始在dht网络中搜集磁力链python dht.py下面是软件截图:

当然,这里有些小warning或是error之类的,考虑是demo,可以忽略,因为原理是通的,我们也可以在开源的基础上继续修改完善.

下面是爬取日志记录的infohash值

为了理解dht爬虫原理,下面附了几篇不错的文章,可以结合python代码和dht协议进行理解.

参考文献[1].[2].

[3].

[4].

[5].

,每天告诉自己我很棒!

Ubuntu 14.04 64bit上磁力链爬虫dht部署指南

相关文章:

你感兴趣的文章:

标签云: