WebCollector爬虫的redis插件

使用WebCollector的redis插件,进行爬取。(使用redis数据库进行任务管理)

/**
 * RedisCrawler是WebCollector的一个插件,将WebCollector的任务管理交
 * 给redis数据库,使WebCollector可以进行海量网页的爬取
 */
public class MyCrawler extends RedisCrawler{
 
    public MyCrawler(String tableName,String ip,int port){
        super(tableName,ip,port);
    }
 
    @Override
    public void visit(Page page){
        System.out.println(page.getDoc().title());
    }
         
 
    /*运行程序前请开启redis数据库*/
    public static void main(String[] args) throws Exception{
 
        /*mytest是任务名(用于区别不同爬虫),"127.0.0.1"和6379是redis数据库的ip和端口*/
        MyCrawler crawler=new MyCrawler("mytest", "127.0.0.1", 6379);
         
        /*爬取合肥工业大学新闻网*/
        crawler.addSeed("http://news.hfut.edu.cn/");
        crawler.addRegex("http://news.hfut.edu.cn/.*");
 
 
        /*过滤图片*/
        crawler.addRegex("-.*#.*");
        crawler.addRegex("-.*png.*");
        crawler.addRegex("-.*jpg.*");
        crawler.addRegex("-.*gif.*");
        crawler.addRegex("-.*js.*");
        crawler.addRegex("-.*css.*");
 
        /*设置线程数*/
        crawler.setThreads(30);
 
        /*设置是否为断点爬取模式*/
        crawler.setResumable(false);
 
        /*开始深度为5的爬取*/
        crawler.start(5);
    }
}


你可能感兴趣的:(WebCollector爬虫的redis插件)