`
AJAXHu
  • 浏览: 54774 次
文章分类
社区版块
存档分类
最新评论
文章列表
用WebCollector爬取整站图片,只需要遍历整站页面,然后将URL为.jpg、gif的页面(文件)保存到本地即可。 例如我们爬取一个美食网站,获取里面所有的图片: import cn.edu.hfut.dmic.webcollector.crawler.BreadthCrawler; import cn.edu.hfut.dmic.webcollector.model.Page; import cn.edu.hfut.dmic.webcollector.util.FileUtils; import java.io.IOException; import java.util.c ...
WebCollector Cookbook (WebCollector中文文档): http://www.brieftools.info/document/webcollector/
使用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); } ...
对一些访问受限的网站进行爬取(例如需要登录、切换代理),往往需要进行自定义http请求。 BreadthCrawler默认使用JDK自带的HttpUrlConnection进行http请求,下面示例通过自定义http请求,使用httpclient 4.x进行http请求。(需要导入httpclient 4.x所需jar包,或添加httpclient 4.x的maven dependency). import cn.edu.hfut.dmic.webcollector.crawler.BreadthCrawler; import cn.edu.hfut.dmic.webcollector ...
WebCollector爬虫并不像scrapy那样,提供一个pipeline这样的数据持久化接口。 用户通过自定义WebCollector中BreadthCrawler中的visit方法,来定义对每个页面的操作。同样,数据的持久化,也是在这里让用户自定义的。 例如下面这个示例,展示如何将网页的源码,保存到数据库中: import cn.edu.hfut.dmic.webcollector.crawler.BreadthCrawler; import cn.edu.hfut.dmic.webcollector.model.Page; public class MyCrawler e ...
WebCollector建议使用内置的Jsoup进行网页抽取。 从网页抽取的稳定性角度来说,Jsoup使用的CSS SELECTOR无疑是最稳定的抽取特征。传统的抽取方案大多数依赖正则或者xpath,但是正则和xpath这两个特征无论是从稳定性,还是从开发效率,都远远低于CSS SELECTOR。 下面的示例,就是用WebCollector内置的Jsoup,对知乎的提问进行抽取: public class ZhihuCrawler extends BreadthCrawler{ /*visit函数定制访问每个页面时所需进行的操作*/ @Override p ...
BreadthCrawler是WebCollector最常用的爬取器之一,依赖文件系统进行爬取信息的存储。这里以BreadthCrawler为例,对WebCollector的爬取配置进行描述: import cn.edu.hfut.dmic.webcollector.crawler.BreadthCrawler; import cn.edu.hfut.dmic.webcollector.model.Page; impo ...
定义一个MyCrawler类,继承BreadthCrawler,来完成一个爬虫,对合肥工业大学官网和新华网进行爬取。 对于一个最简单的爬虫,有2个东西是必备的: 1)种子 2)正则约束 3)对每个页面的自定义操作(BreadthCrawler默认的visit方法是将网页保存到文件夹,建议覆盖,改成自己的自定义操作) import cn.edu.hfut.dmic.webcollector.crawler.BreadthCrawler; import cn.edu.hfut.dmic.webcollector.model.Page; public class MyCrawler ...
网络爬虫之所以能够不断找到新的网页,是因为它能够从已经爬取的页面中,提取出未爬取的超链接,但是当爬虫开启的时候,是没有已知网页的。所以我们需要告诉爬虫至少1个url,让爬虫通过爬取这个url对应的网页,来找到新的网页(通过超链接抽取)。 对于广度遍历来说,种子就是树的树根(森林的树根集合)。 例如下图,对http://www.apache.org/进行爬取,http://www.apache.org/就是种子。 一般把爬虫的种子设为网站的首页。
WebCollector可通过MAVEN直接导入项目,在pom.xml中添加dependency: <dependency> <groupId>cn.edu.hfut.dmic.webcollector</groupId> <artifactId>WebCollector</artifactId> <version>1.31</version> </dependency>
将WebCollector导入普通项目只需要两步: 1.到WebCollector的github主页https://github.com/CrawlScript/WebCollector ,下载webcollector-版本号-bin.zip,解压。 2.将解压后文件夹中所有的jar包,加入项目的build path,导入成功。
用WebCollector下载的在线API文档,发布在精简导航上: JAVA6的中文API: http://www.brieftools.info/document/JDK60/ JSOUP中文教程: http://www.brieftools.info/document/jsoup/
本文利用WebCollector内核的解析,来描述如何设计一个网络爬虫。我们先来看看两个非常优秀爬虫的设计。 Nutch Nutch由apache开源组织提供,主页:http://nutch.apache.org/ Nutch是目前最好的网络爬虫之一,Nutch分为内核和插件两个模块 ...
发现ruby-china中很多在github.io上的个人博客文章质量还是不错的.但是很少文章被转载和收录. 所以我对ruby-china中很多用户个人博客做了个推送网站,希望这些优秀博客可以被看到.http://www.brieftools.info/blogger/ 如果有博主希望被收录,回复网址即可. 注意:网页每半分钟变动一次.
JAVA爬虫WebCollector教程列表 入门教程: WebCollector入门教程(中文版) 用WebCollector对指定URL进行爬取和解析 用WebCollector进行二次开发,定制自己的爬虫 JAVA爬虫Nutch、WebCollector的正则约束 实例: 用WebCollector制作一个爬取《知乎》并进行问题精准抽取的爬虫(JAVA) 用WebCollector爬取新浪微博
Global site tag (gtag.js) - Google Analytics