Skip to content

cvsher/spider

Repository files navigation

【这仅仅是我个人为学习基于redis实现生产者消费者队列而写的小程序】

启动方法: 1、启动redis服务 2、修改config/applicationContext.xml配置文件,的如下配置

<bean id="jedisPool" class="redis.clients.jedis.JedisPool" >
	<constructor-arg index="0" ref="jedisPoolConfig" />
	<constructor-arg index="1" value="192.168.171.131" />		<!-- redis服务所在的ip -->
	<constructor-arg index="2" value="6379" />	<!-- redis服务的端口 -->
</bean>
3、启动SpiderStarter即可。

爬虫以SpiderStarter的main方法开始启动,启动后SpiderStarter会启动DownloaderStarter和ParserStarter两个组件;DownloaderStart会根据配置启动下载线程进行网页的爬取下载,ParserStarter同样会根据配置启动网页解析线程,对已下载的网页进行解析处理,并产生新的待爬url,解析线程会调用IUrlCrawledJudgment接口判断url是否已经爬取过。

使用redis实现生产者-消费者队列,

IQueue为队列接口,RedisProducerConsumerQueue为基于redis的生产者-消费者队列的具体实现【主要是使用了lpush和brpop命令】

两个队列: 1、URL队列:DownLoader从URL队列中消费URL,Parser向URL队列中生产URL。 2、Content队列:Parser从Content队列中消费Content,并分析处理。DownLoader从URL中下载Content,生产Content。

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages