webmagic学习笔记

来源:互联网 发布:淘宝爆款怎样打造爆款 编辑:程序博客网 时间:2024/04/29 06:24

今天来看看页面出来的过程

在class Spider中有run函数,调用了 processRequest(requestFinal)完成对页面的下载和处理。在这个函数里面先调用downloader.download(request, this);完成页面的下载,   pageProcessor.process(page);完成对页面的处理过程,随后可以进行抽取结果的持久的过程。爬虫下载页面以及后续处理的大致过程,我现在要分析的主要是页面的处理过程!


pageProcessor.process()这个函数需要用户自己来定义,这里主要涉及HTML这个类,这个类完成了对页面的处理。HTML继承自htmlnode,htmlnode则继承自abstractselectable,abstractselectable则是实现了selectable接口。

selectable中有若干函数,用于实现对结果的抽取。主要还是要看HTML这个类,虽然这个类有多个构造函数,但是下载页面后将下载的内容转换为HTML的时候调用的是 Html(String text) ,然后调用 this.document = Jsoup.parse(text);用jsoup来解析这个string类型的HTML。在这个类中实现了对页面的解析,当然类中调用了之前已经定义的多个选择器!思绪有点乱,暂时这样!


0 0
原创粉丝点击