笨鸟编程-零基础入门Pyhton教程

 找回密码
 立即注册

选择器

发布者: 笨鸟自学网



内置选择器引用

选择器对象

classscrapy.selector.Selector(*args**kwargs)[源代码]

的实例 Selector 是一个包装响应,用于选择其内容的某些部分。

response 是一个 HtmlResponse 或 XmlResponse 将用于选择和提取数据的对象。

text 是Unicode字符串或UTF-8编码文本,用于 response 不可用。使用 text 和 response 一起是未定义的行为。

type 定义选择器类型,它可以是 "html" , "xml" 或 None (默认)。

如果 type 是 None ,选择器根据 response 类型(见下文),或默认为 "html" 以防与 text .

如果 type 是 None 和A response 如果传递,则从响应类型推断选择器类型,如下所示:

  • "html" 对于 HtmlResponse 类型

  • "xml" 对于 XmlResponse 类型

  • "html" 还有什么事吗

否则,如果 type 设置后,选择器类型将被强制,不会发生检测。

xpath(querynamespaces=None**kwargs)[源代码]

查找与xpath匹配的节点 query 并将结果作为 SelectorList 将所有元素展平的实例。列表元素实现 Selector 接口也是如此。

query 是包含要应用的XPath查询的字符串。

namespaces 是可选的 prefix: namespace-uri 将附加前缀的映射(dict)映射到 register_namespace(prefix, uri) . 相反 register_namespace() ,这些前缀不会保存以备将来调用。

可以使用任何其他命名参数来传递xpath表达式中xpath变量的值,例如::

selector.xpath('//a[href=$url]', url="http://www.example.com")

注解

为了方便起见,此方法可以调用为 response.xpath()

css(query)[源代码]

应用给定的css选择器并返回 SelectorList 实例。

query 是包含要应用的CSS选择器的字符串。

在后台,使用 cssselect 类库与运行 .xpath() 方法。

注解

为了方便起见,此方法可以调用为 response.css()

get()[源代码]

序列化并返回单个Unicode字符串中匹配的节点。未引用编码内容的百分比。

参见: extract()和extract_first()。

attrib

返回基础元素的属性字典。

参见: 选择元素属性 .

re(regexreplace_entities=True)[源代码]

应用给定的regex并返回带有匹配项的Unicode字符串列表。

regex 可以是已编译的正则表达式,也可以是将使用 re.compile(regex) .

默认情况下,字符实体引用替换为其相应的字符(除了 & 和 < )经过 replace_entities 作为 False 关闭这些替换。

re_first(regexdefault=Nonereplace_entities=True)[源代码]

应用给定的regex并返回第一个匹配的unicode字符串。如果没有匹配项,则返回默认值 (None 如果未提供参数)。

默认情况下,字符实体引用替换为其相应的字符(除了 & 和 < )经过 replace_entities 作为 False 关闭这些替换。

register_namespace(prefixuri)[源代码]

注册要在此中使用的给定命名空间 Selector . 如果不注册命名空间,则无法从非标准命名空间中选择或提取数据。见 XML响应的选择器示例 .

remove_namespaces()[源代码]

删除所有名称空间,允许使用不含名称空间的xpaths遍历文档。见 正在删除命名空间 .

__bool__()[源代码]

返回 True 如果选择了任何真实内容或 False 否则。换句话说,布尔值 Selector 由它选择的内容给出。

getall()[源代码]

序列化并返回unicode字符串的1元素列表中匹配的节点。

为了保持一致性,这个方法被添加到选择器中;它对于选择器列表更有用。参见: extract()和extract_first()。


上一篇:蜘蛛下一篇:项目

Archiver|手机版|笨鸟自学网 ( 粤ICP备20019910号 )

GMT+8, 2024-9-17 04:26 , Processed in 0.024990 second(s), 17 queries .

© 2001-2020

返回顶部