如何从项目管道访问临时设置

如何从项目管道访问settings.py中的scrapy设置。文档中提到可以通过扩展程序中的搜寻器访问它,但是我看不到如何在管道中访问搜寻器。

回答:

settings.py从内部访问Scrapy设置(如中所定义)的方法your_spider.py很简单。所有其他答案都太复杂了。原因是对Scrapy文档的维护非常差,加上许多最新的更新和更改。在“设置”文档“ 如何访问设置 ”中,或者在“设置API”中,都没有给出任何可行的示例。这是一个示例,说明如何获取当前的USER_AGENT字符串。

只需将以下行添加到your_spider.py

# To get your settings from (settings.py):

from scrapy.utils.project import get_project_settings

...

class YourSpider(BaseSpider):

...

def parse(self, response):

...

settings = get_project_settings()

print "Your USER_AGENT is:\n%s" % (settings.get('USER_AGENT'))

...

如您所见,无需使用@classmethod或重新定义from_crawler()or __init__()函数。希望这可以帮助。

PS。我仍然不确定为什么使用from scrapy.settings import Settings方式不一样,因为这将是更明显的导入选择?

以上是 如何从项目管道访问临时设置 的全部内容, 来源链接: utcz.com/qa/407007.html

回到顶部