摘要: 首先我们新建一个Maven普通客户端项目,然后打开pom.xml 引入htmlunit支持: 然后我们写一个测试类,来解析www.baidu.com 获取网页html以及网页文本,这里有点类似httpClient,但是底层执行过程默认多了一个js执行过程(当然htmlunit提供了关闭js解析设置) 阅读全文
posted @ 2017-12-25 15:56 不朽丶 阅读(973) 评论(0) 推荐(0) 编辑
摘要: HttpClient连接超时及读取超时 httpClient在执行具体http请求时候 有一个连接的时间和读取内容的时间; HttpClient连接时间 所谓连接的时候 是HttpClient发送请求的地方开始到连接上目标url主机地址的时间,理论上是距离越短越快, 线路越通畅越快,但是由于路由复杂 阅读全文
posted @ 2017-12-25 15:36 不朽丶 阅读(8361) 评论(0) 推荐(0) 编辑
摘要: 在爬取网页的时候,有的目标站点有反爬虫机制,对于频繁访问站点以及规则性访问站点的行为,会采集屏蔽IP措施。 这时候,代理IP就派上用场了。 关于代理IP的话 也分几种 透明代理、匿名代理、混淆代理、高匿代理 1、透明代理(Transparent Proxy) REMOTE_ADDR = Proxy 阅读全文
posted @ 2017-12-25 15:34 不朽丶 阅读(506) 评论(0) 推荐(0) 编辑
摘要: HttpClient 这个框架主要用来请求第三方服务器,然后获取到网页,得到我们需要的数据; HttpClient设置请求头消息User-Agent模拟浏览器 比如我们请求 www.tuicool.com 首先建一个Maven项目,然后添加httpClient依赖,版本是4.5 创建demo01: 阅读全文
posted @ 2017-12-25 15:33 不朽丶 阅读(271) 评论(0) 推荐(0) 编辑
摘要: 控制器类必须传一个类型为CrawlConfig的参数,用于配置crawler4j。下面描述了一些关于配置的细节。 抓取深度 默认情况下没有抓取深度的限制。可以通过配置来限制深度,比如,你有个种子页面A连接到B,B又连接到C,C又连接到D。结构如下: A --> B --> C --> D A是种子页 阅读全文
posted @ 2017-12-25 15:17 不朽丶 阅读(1520) 评论(0) 推荐(0) 编辑
摘要: 该事例演示了如何在多线程中统计和分析数据; 首先建一个状态实体类CrawlStat: 再建一个LocalDataCollectorCrawler类: 最后建一个控制器LocalDataCollectorController: 打印结果: 阅读全文
posted @ 2017-12-25 15:07 不朽丶 阅读(699) 评论(0) 推荐(0) 编辑
摘要: 该实例主要演示下如何爬取指定网站的图片; 代码中有详细注释: 首先写一个ImageCrawler类: 再写一个图片爬虫控制器:ImageCrawlController 阅读全文
posted @ 2017-12-25 14:57 不朽丶 阅读(786) 评论(0) 推荐(0) 编辑
摘要: 项目是基于maven 结构的。 首先我们在pom.xml中加入log4j以及log4j驱动类支持; <groupId>edu.uci.ics</groupId> <artifactId>crawler4j</artifactId> <version>4.2</version> </dependenc 阅读全文
posted @ 2017-12-25 14:45 不朽丶 阅读(806) 评论(0) 推荐(0) 编辑
页脚