天天看点

java使用webmagic爬取中关村手机相关信息

爬取代码如下:

java使用webmagic爬取中关村手机相关信息

爬取逻辑如下:

java使用webmagic爬取中关村手机相关信息

WebMagic的四个组件

1.Downloader

Downloader负责从互联网上下载页面,以便后续处理。WebMagic默认使用了Apache HttpClient作为下载工具。

2.PageProcessor

PageProcessor负责解析页面,抽取有用信息,以及发现新的链接。WebMagic使用Jsoup作为HTML解析工具,并基于其开发了解析XPath的工具Xsoup。

在这四个组件中,PageProcessor对于每个站点每个页面都不一样,是需要使用者定制的部分。

3.Scheduler

Scheduler负责管理待抓取的URL,以及一些去重的工作。WebMagic默认提供了JDK的内存队列来管理URL,并用集合来进行去重。也支持使用Redis进行分布式管理。

除非项目有一些特殊的分布式需求,否则无需自己定制Scheduler。

4.Pipeline

Pipeline负责抽取结果的处理,包括计算、持久化到文件、数据库等。WebMagic默认提供了“输出到控制台”和“保存到文件”两种结果处理方案。

Pipeline定义了结果保存的方式,如果你要保存到指定数据库,则需要编写对应的Pipeline。对于一类需求一般只需编写一个Pipeline。

**

webmagic官方中文文档:http://webmagic.io/docs/zh/

**

实际爬取数据如下:

java使用webmagic爬取中关村手机相关信息

项目只需修改需要修改PhonesPipeline相关数据库信息,然后直接打开v2版本打开ZolPageProcessor执行main方法即可实现抓取手机相关信息。

项目代码已上传cdsn: https://download.csdn.net/download/qq1594443513/12012144