zoukankan      html  css  js  c++  java
  • GuozhongCrawler系列教程 (4) StartContext具体解释


      StartContext是注入时全部seed的上下文信息假设爬虫在抓取过程其中须要共享一些变量。那么可使用StartContext作为容器。


    构造器具体资料

    • StartContext

      public StartContext()
      构造一个StartContext。

      通经常使用来充当seedRequest的容器

    • StartContext

      public StartContext(java.lang.String url,
                  java.lang.Class<? extends PageProcessor> processorCls)
      构造一个StartContext。而且增加一个种子URL
      參数:
      url -
      processorCls -
    • StartContext

      public StartContext(java.lang.String url,
                  java.lang.Class<? extends PageProcessor> processorCls,
                  PageRequest.PageEncoding pageEncoding)
      构造一个StartContext。而且增加一个种子URL
      參数:
      url -
      processorCls -
      pageEncoding - URL相应网页的编码

    方法具体资料

    • createPageRequest

      public PageRequest createPageRequest(java.lang.String url,
                                  java.lang.Class<? extends PageProcessor> processorCls)
      创建网页下载请求PageRequest
      參数:
      url - 这个请求相应的http或者https 地址
      processorCls - 下载完毕后处理这个网页Page的PageProcessor的class对象
      返回:
      PageRequest
    • createPageRequest

      public PageRequest createPageRequest(java.lang.String url,
                                  java.lang.Class<? extends PageProcessor> processorCls,
                                  int priority,
                                  PageRequest.PageEncoding pageEncoding)
      创建网页下载请求PageRequest
      參数:
      url - 这个请求相应的http或者https 地址
      processorCls - 下载完毕后处理这个网页Page的PageProcessor的class对象
      priority - 设置这个PageRequest的priority。须要注意的仅仅有使用crawTaskBuilder.useQueuePriorityRequest或者crawTaskBuilder.useQueueDelayedPriorityRequest的时候 priority才会起作用并排序。
      pageEncoding - 这个PageRequest相应URL的网页编码格式。

      假设不指定那么会用crawTaskBuilder中指定的usePageEncoding。假设crawTaskBuilder没有 使用usePageEncoding。则默认用UTF-8编码

      返回:
      PageRequest
    • createPageRequest

      public PageRequest createPageRequest(java.lang.String url,
                                  java.lang.Class<? extends PageProcessor> processorCls,
                                  int priority)
      创建网页下载请求PageRequest
      參数:
      url - 这个请求相应的http或者https 地址
      processorCls - 下载完毕后处理这个网页Page的PageProcessor的class对象
      priority - 设置这个PageRequest的priority。须要注意的仅仅有使用crawTaskBuilder.useQueuePriorityRequest或者crawTaskBuilder.useQueueDelayedPriorityRequest的时候 priority才会起作用并排序。
      返回:
      PageRequest
    • createBinaryRequest

      public BinaryRequest createBinaryRequest(java.lang.String url,
                                      java.lang.Class<? extends BinaryProcessor> processorCls)
      创建一个二进制下载请求
      參数:
      url - 这个请求相应的http或者https 地址
      processorCls - 文件下载时处理这个InputStream的BinaryProcessor的class对象
      返回:
      BinaryRequest
    • createTransactionRequest

      public TransactionRequest createTransactionRequest(TransactionCallBack transactionCallBack)
      创建支持事务的下载请求。
      參数:
      transactionCallBack - 事务完毕后的回调接口的Class
      返回:
      TransactionRequest
    • createTransactionRequest

      public TransactionRequest createTransactionRequest(TransactionCallBack transactionCallBack,
                                                BasicRequest... child)
      给定一个child集合创建支持事务的下载请求。
      參数:
      transactionCallBack - 事务完毕后的回调接口
      child - child集合
      返回:
      TransactionRequest
    • injectSeed

      public void injectSeed(BasicRequest request)
      注入种子
      參数:
      request -
    • getSeedRequests

      public java.util.List<BasicRequest> getSeedRequests()
      返回该StartContext所包括的全部种子URL
      返回:

    • getContextAttribute

      public java.lang.Object getContextAttribute(java.lang.String attribute)
      返回attribute相应的value 这种方法是线程安全的
      參数:
      key -
      返回:
      返回attribute相应的value
    • putContextAttribute

      public java.lang.Object putContextAttribute(java.lang.String attribute,
                                         java.lang.Object value)
      向StartContext域put一个属性值。并返回之前的attribute相应的value。

      假设之前没有attribute属性那么返回null。这种方法是线程安全的

      參数:
      attribute -
      value -
      返回:
      返回之前的attribute相应的value。假设之前没有attribute属性那么返回null
    • getSeedSize

      public int getSeedSize()
      返回种子URL的个数
      返回:

    isEmpty

    public boolean isEmpty()
    返回StartContext是否为空。
    返回:
  • 相关阅读:
    Map 中的EntrySet() ,Map的遍历
    Struts2拦截器原理
    基于 <tx> 和 <aop> 命名空间的声明式事务管理
    Spring AOP Example 文件下载:
    Struts2拦截器
    好多开发文档——官网打不开的福音
    threejs样例
    bootCDN,用了都说好
    react拷贝index.html很恶心之解决办法
    网络爬虫好
  • 原文地址:https://www.cnblogs.com/yutingliuyl/p/6718310.html
Copyright © 2011-2022 走看看