GuozhongCrawler系列教程 (3) PageProcessor详解
博客专区 > 郭钟 的博客 > 博客详情
GuozhongCrawler系列教程 (3) PageProcessor详解
郭钟 发表于3年前
GuozhongCrawler系列教程 (3) PageProcessor详解
  • 发表于 3年前
  • 阅读 61
  • 收藏 0
  • 点赞 1
  • 评论 0

标题:腾讯云 新注册用户域名抢购1元起>>>   

摘要: GuozhongCrawler的是一个无须配置、便于二次开发的爬虫开源框架,它提供简单灵活的API,只需少量代码即可实现一个爬虫。模块化设计完全面向业务提供接口,功能覆盖整个爬虫的生命周期(链接提取、页面下载、内容抽取、持久化),支持多线程抓取,分布式抓取,并支持自动重试,定制执行js、自定义cookie等功能。在处理网站抓取多次后被封IP的问题上,GuozhongCrawler采用动态轮换IP机制有效防止IP被封。另外,源码中的注释及Log输出全部采用通俗易懂的中文。让初学者能有更加深刻的理解

       PageProcessor是所有PageRequest请求完成后处理的接口。 例如:startContext.createPageRequest("http://my.oschina.net/u/1377701/blog/425984",OschinaProcessor.class)即可指定处理页面结果 此时重写OschinaProcessor.process方法即可完成解析工作


方法详细资料

  • getJavaScript

    PageScript getJavaScript()

    如果这个页面需要动态交互JS,定义一个PageScript返回

    • 返回:


  • getNormalContain

    java.util.regex.Pattern getNormalContain()

    当启动代理Ip访问时需要重写此方法,返回正常网页应该带有的字符串标识。比如www.baidu.com带有“百度”

    • 返回:


  • process

    void process(OkPage page,           StartContext context,
               java.util.List<BasicRequest> queue,
               java.util.List<Proccessable> objectContainer)
                 throws java.lang.Exception

    处理一个页面

    • 参数:

    • page - 下载完成的网页

    • context - 当前所有入口的上下文对象

    • queue - 加入跟进Request的List容器,处理完成后queue的所有Request会被推送到抓取队列中

    • 抛出:

    • java.lang.Exception

  • processErrorPage

    void processErrorPage(Page page,                    StartContext context)
                          throws java.lang.Exception

    处理错误页面

    • 参数:

    • page -

    • context -

    • 抛出:

    • java.lang.Exception


共有 人打赏支持
粉丝 17
博文 12
码字总数 7550
作品 1
×
郭钟
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: