回调返回NameError-Scrapy

时间:2019-02-19 19:48:12

标签: python scrapy

在名为 last 的last方法上使用回调时遇到麻烦。我收到以下错误

NameError: name 'last' is not defined 

即使使用相同的逻辑,上述一种方法也可以正常工作。如果有人有任何想法,我将非常感谢您的帮助。

编辑:我尝试将self.last放进去,但是我遇到了同样的问题-这次self没有定义。

谢谢!

enter image description here

2 个答案:

答案 0 :(得分:2)

除了使用self.last配置回调参数。
Spider方法应严格将selfresponse作为方法参数(而不是regionregion_2)。否则SplashRequest将无法识别callback功能

   ....
        def third(self, response): #not def third(region, response)
    ........
            yield SplashRequest(region_2, callback=self.last,....


        def last(self, response): #not def third(region, response)

答案 1 :(得分:0)

您忘记了self。修正为callback=self.last