crawler4j_01_parser_ParseData,Parser

前言

  本文讲解的第一个部分是parser包中的“解析数据结果类”,即接口ParseData及其实现类,包括BinaryParseData、HtmlParseData和TextParseData。三者之间的关系及包含属性如下图所示:
  这里写图片描述
  讲解的第二个部分是实现数据解析的工具类,如Parser、AllTagMapper、ExtractedUrlAnchorPair、ExtractedRulAnchoPair和NotAllowedCOntentException。

一.“解析数据结果类”

  ParseData接口及其实现类如上图所示。除了BinaryParseData中没有找到binaryContent变量。不同的类持有不同的变量保存各自重要的数据。但是每个实现类都需要有此页面包含的url列表。
————貌似没什么讲啊,第二节讲其他类在稍作展开。

二.“解析工具类”
1.Parser类,继承了Configurable类

  parser包中最重要的类Parser在WebCrawler中被调用,代码有三行,如下

  /**
     * 这个解析器用户这个爬虫实例解析爬取的内容
     * The parser that is used by this crawler instance to parse the content of the fetched pages.
     */
    private Parser parser;
    ...
    public void init(int id,CrawlController crawlController){
    ...
    this.parser=new Parser(crawlController.getConfig());
    ...
    }
    ...

    //对网页进行解析,将相关数据放在参数page中。稍后进行展开讲_在void processPage(WebURL)中调用
    parser.parse(page, curURL.getURL());

如上几行代码所示,其实Parser类中最重要的函数也只有两个,分别是构造函数和解析函数,代码如下:

public class Parser extends Configurable {
   

    protected static final Logger logger = LoggerFactory.getLogger(Parser.class);

    //todo ??"html解析器"和"解析内容"??
    private 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值