多线程爬虫Miner_JAVA_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > JAVA > 多线程爬虫Miner

多线程爬虫Miner

 2016/5/12 5:33:43  InJavaWeTrust  程序员俱乐部  我要评论(0)
  • 摘要:多线程爬虫Miner-------------------------------------------程序中用到的表:CREATETABLE`miner`(`id`varchar(32)NOTNULL,`batchNo`varchar(8)DEFAULTNULL,`filePath`varchar(255)DEFAULTNULL,`fileName`varchar(255)DEFAULTNULL,`getDate`datetimeDEFAULTNULL,PRIMARYKEY(`id`)
  • 标签:多线程 线程

?

线程爬虫Miner??



?

-------------------------------------------

程序中用到的表:

class="sql" name="code">CREATE TABLE `miner` (
  `id` varchar(32) NOT NULL,
  `batchNo` varchar(8) DEFAULT NULL,
  `filePath` varchar(255) DEFAULT NULL,
  `fileName` varchar(255) DEFAULT NULL,
  `getDate` datetime DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

-------------------------------------------

程序中用到的maven依赖

<dependency>
	<groupId>org.jsoup</groupId>
	<artifactId>jsoup</artifactId>
	<version>1.8.3</version>
</dependency>
<dependency>
	<groupId>mysql</groupId>
	<artifactId>mysql-connector-java</artifactId>
	<version>5.1.15</version>
	<scope>provided</scope>
</dependency>
<dependency>
	<groupId>commons-logging</groupId>
	<artifactId>commons-logging</artifactId>
	<version>1.2</version>
</dependency>

?

测试类:

package com.iteye.injavawetrust.miner;

import java.util.ArrayList;
import java.util.List;
/**
 * 测试类
 * @author InJavaWeTrust
 *
 */
public class MinerTest {
	public static void main(String[] args) {
		MinerConfig config = new MinerConfig();
		// 1、URL包含关键字。
		List<String> keys = new ArrayList<String>();
		keys.add("163");
		config.setKeys(keys);
		// 2、存储方式:DB-数据库存储;FILE-文件存储。
		config.setStoreType(StoreType.DB);
		// 3、爬取页面最大深度。
		config.setMaxDepth(2);
		// 4、下载页面线程数。
		config.setMinerHtmlThreadNum(5);
		// 5、分析页面线程数。
		config.setMiseringThreadNum(3);
		// 6、存储线程数。
		config.setMinserStoreThreadNum(3);
		// 7、设置爬取起始页面URL。
		MinerUrl minerUrl = new MinerUrl();
		minerUrl.setUrl("http://www.163.com");
		minerUrl.setDepth(1);
		Miner miner = new Miner(minerUrl, config);
		miner.start();
	}

}

?

爬虫 MINER?? 程序列表:

?

Html.java 存储页面信息类
Miner.java 爬虫启动类
MinerBean.java 数据库表 miner bean
MinerConfig.java 爬取配置类
MinerConstanits.java 常量类
MinerDB.java 数据库工具类
MinerHtmlThread.java 爬取页面线程
MinerMonitorThread.java 监控线程
MinerQueue.java 访问队列
MinerStoreThread.java 存储线程
MinerThreadPool.java 线程池
MinerUrl.java 解析页面后存储URL类
MinerUtil.java 爬虫工具类
MiseringThread.java 解析页面线程
StoreType.java 存储方式

?

?

?

?

?

?

发表评论
用户名: 匿名