WebCollector入门教程(中文版)
来源:互联网 发布:2016网络彩票开售在即 编辑:程序博客网 时间:2024/05/29 15:45
WebCollector爬虫官网:https://github.com/CrawlScript/WebCollector
3.用WebCollector进行精准抽取:
4.用WebCollector爬取指定URL列表的网页(不需要递归爬取)。
1.将WebCollector导入工程:
进入WebCollector主页:https://github.com/CrawlScript/WebCollector
下载:webcollector-版本号-bin.zip
将解压后文件夹中的所有jar包添加到工程既可。
2.用WebCollector爬取整个网站:
爬取新华网整站内容:
- public class Demo {
- public static void main(String[] args) throws IOException {
- BreadthCrawler crawler = new BreadthCrawler();
- crawler.addSeed("http://www.xinhuanet.com/");
- crawler.addRegex("http://www.xinhuanet.com/.*");
- /*网页、图片、文件被存储在download文件夹中*/
- crawler.setRoot("download");
- /*进行深度为5的爬取*/
- crawler.start(5);
- }
- }
3.用WebCollector进行精准抽取:
爬取《知乎》并进行问题精准抽取的爬虫(JAVA):
- public class ZhihuCrawler extends BreadthCrawler{
- /*visit函数定制访问每个页面时所需进行的操作*/
- @Override
- public void visit(Page page) {
- String question_regex="^http://www.zhihu.com/question/[0-9]+";
- if(Pattern.matches(question_regex, page.getUrl())){
- System.out.println("正在抽取"+page.getUrl());
- /*抽取标题*/
- String title=page.getDoc().title();
- System.out.println(title);
- /*抽取提问内容*/
- String question=page.getDoc().select("div[id=zh-question-detail]").text();
- System.out.println(question);
- }
- }
- /*启动爬虫*/
- public static void main(String[] args) throws IOException{
- ZhihuCrawler crawler=new ZhihuCrawler();
- crawler.addSeed("http://www.zhihu.com/question/21003086");
- crawler.addRegex("http://www.zhihu.com/.*");
- crawler.start(5);
- }
- }
4.用WebCollector爬取指定URL列表的网页(不需要递归爬取)。
- public class Demo2 {
- public static void main(String[] args) throws IOException {
- /*设置递归爬取时每个页面产生的URL数量,这里不需要递归爬取*/
- Config.topN=0;
- BreadthCrawler crawler = new BreadthCrawler();
- crawler.addSeed("http://www.xinhuanet.com/");
- crawler.addSeed("http://www.sina.com.cn/");
- crawler.addRegex(".*");
- /*网页、图片、文件被存储在download文件夹中*/
- crawler.setRoot("download");
- /*进行深度为1的爬取*/
- crawler.start(1);
- }
- }
5.用WebCollector爬取站内以及外站内容:
爬取新华网以及新华网内所有外链的内容,以及外链的外链.......
- public class Demo3 {
- public static void main(String[] args) throws IOException {
- BreadthCrawler crawler = new BreadthCrawler();
- crawler.addSeed("http://www.xinhuanet.com/");
- /*网页、图片、文件被存储在download文件夹中*/
- crawler.setRoot("download");
- /*指定对爬取URL的限制(URL正则)*/
- crawler.addRegex(".*");
- /*进行深度为5的爬取*/
- crawler.start(5);
- }
- }
6.高级参数配置:
- public class Demo4 {
- public static void main(String[] args) throws IOException {
- BreadthCrawler crawler = new BreadthCrawler();
- crawler.addSeed("http://www.xinhuanet.com/");
- /*URL信息存放路径*/
- crawler.setCrawlPath("crawl");
- /*网页、图片、文件被存储在download文件夹中*/
- crawler.setRoot("download");
- /*正规则,待爬取网页至少符合一条正规则,才可以爬取*/
- crawler.addRegex("+^http://www.xinhuanet.com/");
- crawler.addRegex("+^http://news.xinhuanet.com.*");
- /*负规则,只要符合一条负规则,跳过,不爬取*/
- crawler.addRegex("-^http://news.xinhuanet.com/edu.*");
- /*线程数*/
- crawler.setThreads(30);
- /*设置User-Agent*/
- crawler.setUseragent("Mozilla/5.0 (X11; Ubuntu; Linux i686; rv:26.0) Gecko/20100101 Firefox/26.0");
- /*设置cookie*/
- crawler.setCookie("你的Cookie");
- /*设置是否支持断点爬取*/
- crawler.setResumable(false);
- /*进行深度为5的爬取*/
- crawler.start(5);
- }
- }
0 0
- WebCollector入门教程(中文版)
- WebCollector入门教程
- WebCollector 2.x 入门教程
- WebCollector 2.x入门教程——基本概念
- 网络爬虫 WebCollector 2.x 入门教程
- webcollector 初探(一)
- webcollector 初探(二)
- webcollector 初探(三)
- 苹果Swift语言入门教程【中文版】(一)
- Apple Swift编程语言入门教程(中文版)
- JAVA爬虫WebCollector 2.x入门教程——基本概念
- JAVA爬虫WebCollector 2.x入门教程——基本概念
- OpenMesh入门教程中文版
- ASP.Net快速入门教程 中文版
- Microwave Office 最新中文版入门教程
- 苹果Swift语言入门教程【中文版】
- 苹果Swift语言入门教程【中文版】
- 苹果Swift语言入门教程【中文版】
- UVa #10934 Dropping water balloons (例题9-20)
- BZOJ 3564 SHOI 2014 信号增幅仪 坐标变换+最小圆覆盖
- Maven Dependencies下引入的某一个jar包显示成文件夹
- C# 编程中的反射机制与方法
- POJ2769 Reduced ID Numbers
- WebCollector入门教程(中文版)
- CFStringTransform
- 酒类行业数据分析
- Hello, Cocos2d-x
- 高效 Java Web 开发框架 JessMA v3.5.1 正式发布
- java死锁实例
- Lucene和Solr的区别
- django 1.7 获得当前时区时间
- 安卓巴士Android开发神贴整理