我在scrapy中使用SgmlLinkExtractor功能来解析特定网址。
我重写start_requests函数以抓取动态网址。
start_requests(个体): ..... yield Requests(url.strip(),callbackA)
Callback A现在什么都不做。
我还为SgmlLinkExtractor实现了process_value,但从未调用过。
rules = [规则(SgmlLinkExtractor(allow =()),callback = callbackB,follow = True),]
再次callbackB从未调用。
答案 0 :(得分:0)
如果您的回调是在您的蜘蛛中声明的,那么它们将没有全局范围,您需要使用 self.
将它们作为范围引用到您的班级:
rules = [
Rule(SgmlLinkExtractor(), callback=self.callbackB, follow=True),
]