爬虫日记(92):Scrapy的下载结果回应分析

Posted caimouse

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了爬虫日记(92):Scrapy的下载结果回应分析相关的知识,希望对你有一定的参考价值。

前面分析了HTTP协议发起请求的过程,这个过程是比较复杂的,因为要处理的东西比较多,不但要处理代理的问题,还需要处理协议的数据,以及设置回调的过程。这么多东西放在一起,肯定是比较难理解的。如果一遍看不懂,就要多看几遍了。接着下来,就是当从服务器返回结果时,又是怎么样来处理的呢,我们现在还不清楚是怎么样的一个过程,我们需要带着这个问题来去看代码,就可以找到这个结果。

为了理解返回结果的回调过程,需要先来看一下下面这个例子:

#爬虫日记-蔡军生(qq:9073204)
#https://mysoft.blog.csdn.net/
#2021-07-15
 
from twisted.internet import defer, reactor

d = defer.Deferred()
print(\'d.called:\', d.called)

def add(v):
    print(v)

def test(v):
    print(\'test\')
    d1 = defer.Deferred()
    reactor.callLater(5, d1.callback,3)
    return d1

d.addCallback(add)
d.addCallback(test)
d.addCallback(add)

d.callback(1)
print(\'d.called:\', d.called,\' d.result:\', d.result)

reactor.cal

以上是关于爬虫日记(92):Scrapy的下载结果回应分析的主要内容,如果未能解决你的问题,请参考以下文章

爬虫日记(76):Scrapy的命令行源码分析

爬虫日记(87):Scrapy的RFPDupeFilter类(一)

爬虫日记(91):Scrapy的ScrapyAgent类

爬虫日记(89):Scrapy的DownloadHandlers类

爬虫日记(88):Scrapy的Downloader类

爬虫日记(85):Scrapy的ExecutionEngine类