扫码一下
查看教程更方便
以下是 HTMLResponse 的一些示例,我们将有 HTMLResponse 对象,它是用选择器实例化的,如下所示
res = Selector(html_response)
我们可以从 HTML 响应正文中选择 h2 元素,它返回 SelectorList 对象作为
res.xpath("//h2")
我们可以从 HTML 响应正文中选择 h2 元素,它将 unicode 字符串列表返回为
res.xpath("//h2").extract()
它返回 h2 元素。
res.xpath("//h2/text()").extract()
它返回定义在 h2 标签下的文本,不包括 h2 标签元素。
我们可以运行 p 标签并将类属性显示为
for ele in res.xpath("//p"):
print ele.xpath("@class").extract()
下面是一些关于 XMLResponse 的例子,我们将有 XMLResponse 对象,它是用选择器实例化的,如下所示
res = Selector(xml_response)
我们可以从 XML 响应正文中选择描述元素,它返回 SelectorList 对象作为
res.xpath("//description")
我们可以通过将命名空间注册为
res.register_namespace("g", "http://base.google.com/ns/1.0")
res.xpath("//g:price").extract()
当我们创建 Scrapy 项目时,我们可以使用 Selector.remove_namespaces() 方法删除命名空间,并使用元素名称与 XPaths 一起适当地工作。
在项目中不总是调用名称空间删除过程有两个原因