EasyCrawler-使用WebMagic注解爬取早呀日报

背景

WebMagic作为一个Java爬虫社区比较活跃的开源框架,肯定有不少东西可以学习的,而且最重要的是有使用手册(http://webmagic.io/docs/zh/)。这不,我温故而知新时(最近,项目比较闲,0 Bug,0 需求的我😊),发现了这家伙居然可以使用注解来进行爬虫。

WebMagic注解

看到使用手册的第5部分,我们可以看到WebMagic注解就那么一点东西,当然,这得是在你了解WebMagic和使用过WebMagic的基础下。
在这里插入图片描述
由图我们可以看到,其实注解的开发模式比较简单,就是用@TargetUrl注解来进行网站的下载和抽取,用@ExtractBy注解来进行信息的提取,最后通过实现不同的接口进行信息的处理(最后这句为剧透)。

爬取早呀日报

说多无味(谓),做多最实际,下面我们直接开始实战,在实战中去理解WebMagic注解的使用以及魅力所在。
这次要盘的目标是:早呀-2020-04-17【早报】
在这里插入图片描述
这种由微信公众号发的早报或文章。

今天要爬取的内容很简单,分别是:日报的时间,标题3个,各个标题对应的内容,效果图如下:
在这里插入图片描述
当然,这种东西直接用EasyCrawler是可以直接爬取到的,但是,别忘了我们今天的目标是:温故而知新。

首先

既然我们知道我们今天要爬取的内容,那么我们肯定要先把基本的东西给搭建好了,从调用到写入数据库,这过程一步都不可以少哦!
在这里插入图片描述

第二步

按照WebMagic的说法,我们得先定义一个我们爬取的内容

@Data
//匹配https://blog.love2love.top/archives为前缀的所有网址
@TargetUrl("https://blog.love2love.top/archives/*.html")
public class ZaoYaDTO {
   

    //用ExtractBy注解的字段会被自动抽取并填充
    //默认是xpath语法
    @ExtractBy(value = "#main > div.layout > div.article > article > div.article-meta > span:nth-child(4)",type = ExtractBy.Type.Css)
    private String date;
    @ExtractBy(value = "//*[@id=\"main\"]/div[2]/div[1]/article/div[4]/ul[1]/li/h3/strong/text()")
    private String title1;
    @ExtractBy(value = "//*[@id=\"main\"]/div[2]/div[1]/article/div[4]/p[1]/text()")
    private List<String> content11;
    @ExtractBy(value = "//*[@id=\"main\"]/div[2]/div[1]/article/div[4]/p[2]/text()")
    private List
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值