您的位置:  首页 » Python » 爬虫蜘蛛Scrapy如何设置API?(64)python Scrapy教程1.51以上版本

scrapy.settings.SETTINGS_PRIORITIES
设置Scrapy中使用的默认设置优先级的键名和优先级的字典。

每个项目定义一个设置入口点,为其提供标识的代码名称和整数优先级。在设置和检索Settings类中的值时,更高优先级优先于较小优先 级。

SETTINGS_PRIORITIES = {
    'default': 0,
    'command': 10,
    'project': 20,
    'spider': 30,
    'cmdline': 40,
}

 

有关每个设置源的详细说明,请参阅: 设置

scrapy.settings.get_settings_priority优先
小辅助函数,它在SETTINGS_PRIORITIES字典中查找给定的字符串优先级 并返回其数值,或直接返回给定的数字优先级。
classscrapy.settings.Settingsvalues = Nonepriority =’project’ 
基地: scrapy.settings.BaseSettings

此对象存储用于配置内部组件的Scrapy设置,并可用于任何进一步的自定义。

它是一个直接的子类,支持所有方法 BaseSettings。此外,在实例化此类之后,新对象将具有已在内置设置引用中描述的全局默认设置。

classscrapy.settings.BaseSettingsvalues = Nonepriority =’project’ 
此类的实例表现得像字典,但存储优先级及其对,并且可以被冻结(即标记为不可变)。(key, value)

键值条目可以在初始化时使用values 参数传递,并且它们将采用该priority级别(除非values已经是实例BaseSettings,在这种情况下将保留现有的优先级)。如果priority 参数是字符串,则将查找优先级名称 SETTINGS_PRIORITIES。否则,应提供特定的整数。

创建对象后,可以使用该set()方法加载或更新新设置 ,并且可以使用字典的方括号表示法或get()实例的 方法及其值转换变体来访问。请求存储密钥时,将检索具有最高优先级的值。

copy
制作当前设置的深层副本。

此方法返回类的新实例,并Settings填充相同的值及其优先级。

对新对象的修改不会反映在原始设置上。

copy_to_dict
制作当前设置的副本并转换为字典。

此方法返回一个新的dict,其中填充了与当前设置相同的值及其优先级。

对返回的dict的修改不会反映在原始设置上。

例如,此方法可用于在Scrapy shell中打印设置。

freeze
禁用对当前设置的进一步更改。

调用此方法后,设置的当前状态将变为不可变。试图通过该set()方法及其变体更改值是不可能的,并将收到警报。

frozencopy
返回当前设置的不可变副本。

freeze()在返回的对象中调用的别名copy()

get名称默认=无
获取设置值而不影响其原始类型。

参数:
getboolnamedefault = False 
获取设置值作为布尔值。

1'1'TRUE`'True'回报True,同时0'0'False'False'None回报False

例如,通过设置为的环境变量填充的设置 '0'False在使用此方法时返回。

参数:
  • name字符串) – 设置名称
  • defaultany) – 如果未找到设置则返回的值
getdict名称默认=无
获取设置值作为字典。如果设置原始类型是字典,则将返回其副本。如果它是一个字符串,它将被评估为JSON字典。如果它是一个 BaseSettings实例本身,它将被转换为一个字典,包含它们将返回的所有当前设置值get(),并丢失有关优先级和可变性的所有信息。

参数:
  • name字符串) – 设置名称
  • defaultany) – 如果未找到设置则返回的值
getfloat名称默认= 0.0 
获取设置值作为浮点数。

参数:
  • name字符串) – 设置名称
  • defaultany) – 如果未找到设置则返回的值
getint名称默认= 0 
获取设置值作为int。

参数:
  • name字符串) – 设置名称
  • defaultany) – 如果未找到设置则返回的值
getlist名称默认=无
获取设置值作为列表。如果设置原始类型是列表,则将返回其副本。如果它是一个字符串,它将被“,”拆分。

例如,通过设置为的环境变量填充的设置 'one,two'将在使用此方法时返回列表[‘one’,’two’]。

参数:
  • name字符串) – 设置名称
  • defaultany) – 如果未找到设置则返回的值
getpriority名字
返回设置的当前数字优先级值,或者None如果给定的name不存在。

参数: name字符串) – 设置名称
getwithbase名字
获得类似字典的设置及其_BASE 对应的组合。

参数: name字符串) – 类字典设置的名称
maxpriority
返回所有设置中存在的最高优先级的数值defaultSETTINGS_PRIORITIES如果没有存储设置,则返回from 的数值。
set名称优先级=’项目’ 
存储具有给定优先级的键/值属性。

配置Crawler对象(通过configure()方法)之前应该填充设置,否则它们将没有任何效果。

参数:
  • name字符串) – 设置名称
  • valueany) – 与设置关联的值
  • priority字符串整数) – 设置的优先级。应该是一个键 SETTINGS_PRIORITIES或整数
setmodule模块优先级=’项目’ 
存储具有给定优先级的模块的设置。

这是一个辅助函数,它使用提供的函数调用 set()每个全局声明的大写变量。modulepriority

参数:
  • module模块对象字符串) – 模块或模块的路径
  • priority字符串整数) – 设置的优先级。应该是一个键 SETTINGS_PRIORITIES或整数
updatevaluespriority =’project’ 
存储具有给定优先级的键/值对。

这是一个辅助函数调用 set()为每一个项目values 与所提供的priority

如果values是字符串,则假定它是JSON编码的并且首先解析为dict json.loads()。如果是BaseSettings实例,将使用每个键的优先级并priority忽略该参数。这允许使用单个命令插入/更新具有不同优先级的设置。

参数:
  • values(dict或string或BaseSettings) – 设置名称和值
  • priority字符串整数) – 设置的优先级。应该是一个键 SETTINGS_PRIORITIES或整数