文档章节

GuozhongCrawler系列教程 (5) TransactionRequest详解

郭钟
 郭钟
发布于 2015/06/09 11:56
字数 556
阅读 47
收藏 0

      为了实现和维护并发抓取的属性信息提供线程安全的事务请求。TransactionRequest是一个抽象类自己不能设置Processor,却需要实现 TransactionCallBack接口。TransactionRequest是个复合的BasicRequest。他可以将多个PageRequest、BinaryRequest甚至TransactionRequest 自己的对象添加到child集合中,在下载过程中首先下载TransactionRequest中的所有childRequest,每个childRequest下载完成后使用notify方式逐步向上通知, 直到所有的child下载完成TransactionRequest回调 TransactionCallBack的callBack方法通知业务层这个TransactionRequest下载完成。


方法详细资料

  • getPipeline

    public Pipeline getPipeline()

  • setPipeline

    public void setPipeline(Pipeline pipeline)

  • addAttribute

    public BasicRequest addAttribute(java.lang.String attribute,
                            java.lang.Object value)

    从类复制的说明: BasicRequest

    设置属性

  • getAttribute

    public java.lang.Object getAttribute(java.lang.String attribute)

    从类复制的说明: BasicRequest

    取得属性

  • addChildRequest

    public void addChildRequest(BasicRequest request)

    添加一个BasicRequest到TransactionRequest的child中

    • 参数:

    • request -

  • iteratorChildRequests

    public java.util.Iterator<BasicRequest> iteratorChildRequests()

    返回这个TransactionRequest所有child的迭代器

    • 返回:


  • notify

    public void notify(int hashcode)

    从类复制的说明: BasicRequest

    当子url或者当前url完成的时候回调

  • checkComplete

    public void checkComplete()

    检查是否所有的Request标记都不是false。如果是那么所有的Request已经请求完成和处理。


© 著作权归作者所有

共有 人打赏支持
郭钟
粉丝 17
博文 12
码字总数 7550
作品 1
北京
架构师
GuozhongCrawler实现一个完整爬虫

经过上一节开发环境搭建中的百度新闻的爬虫例子,相信大家已经对GuozhongCrawler简洁的API产生浓厚兴趣了。不过这个还不算一个入门例子。只是完成了简单的下载和解析。现在我们来完成一个比较...

郭钟
2015/04/18
0
3
MongoDB 常用命令总结

MongoDB 常用命令总结 简单的的增删改查数据 在查询结果中指定显示或者不显示某个字段 例如,我们希望在 lessons 集合中查找所有数据,但是不希望在返回结果中包含 slides 字段;因为 slides...

开元中国2015
2015/06/30
191
0
MongoDB系列教程(八):GridFS存储详解

MongoDB系列教程(八):GridFS存储详解 GridFS简介 mongoDB的文档以BSON格式存储,支持二进制的数据类型,当我们把二进制格式的数据直接保存到mongoDB的文档中。但是当文件太大时,例如图片...

开元中国2015
2015/07/25
0
0
“我爱智能”原创性博客索引

不知不觉,博客也写出了一点小体系,新的阶段已经开始,未来希望再接再厉继续补充这一体系,在成长中写博客,在博客中成长,在此先做一个小的梳理,谢谢大家的支持。 一)关于深度学习系列 ...

on2way
2015/08/29
0
0
Android Studio系列教程

Android Studio系列教程一 —- 下载与安装 Android Studio系列教程二 —- 基本设置与运行 Android Studio系列教程三 —- 快捷键 Android Studio系列教程四 —- Gradle基础 Android Studio系列...

青莲居士
2015/10/09
151
0

没有更多内容

加载失败,请刷新页面

加载更多

redis-list

列表用来存储多个有序的字符串,列表中元素是可以重复的,最多可以存储2^32-1个元素 常用命令: lrange key start end 获取指定范围内的元素列表,索引从0开始 0,-1取出所有的元素 lindex k...

拐美人
36分钟前
0
0
AOSP Build System —— Soong

Soong Soong is the replacement for the old Android make-based build system. It replaces Android.mk files with Android.bp files, which are JSON-like simple declarative descriptio......

雪落青山
53分钟前
2
0
Unity C# lock关键字的坑

Unity 5.6 环境下的 lock关键字,在特定的多线程环境下会死锁 崩溃 其中一种情况: 异步socket 操作,由于内部是一个线程池回调的异步回调,操作同一个对象时 lock关键字会概率出现死锁 闪退...

梦想游戏人
今天
1
0
简单的svm例子

数据来源:https://github.com/oumiga1314/Coursera-ML-AndrewNg-Notes/blob/master/code/ex6-SVM/data/ex6data1.mat import pandas as pd import numpy as np import scipy.io as sio impor......

南桥北木
今天
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部