繁体   English   中英

如何在scrapy response.follow中制作循环?

[英]How to make a loop in scrapy response.follow?

我在刮Dmoz网站。 我正在抓每个页面,但我不想每次都写response.follow() 相反,我想做一个循环。 如何使它只是编写page_namefunction_name而不是一次又一次地编写整行代码。

    yield response.follow(self.about_page, self.parse_about, meta={'items': items})
    yield response.follow(self.editor, self.parse_editor, meta={'items': items})
    yield response.follow(self.suggestion, self.suggest_site, meta={'items':items})
    yield response.follow(self.help_page, self.parse_help, meta={'items':items})

你的意思是格式化你的代码? 尝试:

dct = [
    (self.about_page, self.parse_about),
    (self.editor, self.parse_editor),
    (self.suggestion, self.suggest_site),
    (self.help_page, self.parse_help),
]
for page, callback in dct:
    yield response.follow(page, callback, meta={'items': items})

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM