Webmagic爬取网站数据信息保存到本地文件

前言:
关于爬虫,刚接触。
以下几个文档可以参考学习:

webmagic文档案例说明:http://webmagic.io/docs/zh/posts/ch4-basic-page-processor/pageprocessor.html

此文档比较全面,可以先看完此文档

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。

xpath语法参考介绍:
https://www.cnblogs.com/xingyyy/p/7111853.html


案例:

https://acm.taifua.com/bzoj/p/1000.html 到https://acm.taifua.com/bzoj/p/5000.html 不到5000

抽取其中内容如下:

在这里插入图片描述

在这里插入图片描述

源码结构抽取内容分析:
在这里插入图片描述

代码实现如下:

添加依赖:
**加粗样式**

抽取内容:

在这里插入图片描述

其中,UA本机查找复制即可
在这里插入图片描述
在这里插入图片描述

生成结果json源码如下:
在这里插入图片描述
这一步骤是为了生成文件,且名字定义,不然生成的是按照加密的字符形式生成的文件名,不方便阅读查看。

定义方法,实现Pipeline:
此步骤考虑生成文件名
在这里插入图片描述

执行main方法,等待执行完毕
在这里插入图片描述

等待完成:要保持网络顺畅
在这里插入图片描述

生成文件:
在这里插入图片描述
在这里插入图片描述

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值