scrapy shell :
Scrapy终端,是一个交互终端,供您在未启动spider的情况下尝试及调试您的爬取代码。 其本意是用来测试提取数据的代码,不过您可以将其作为正常的Python终端,在上面测试任何的Python代码。 该终端是用来测试XPath或CSS表达式,查看他们的工作方式及从爬取的网页中提取的数据。 在编写您的spider时,该终端提供了交互性测试您的表达式代码的功能,免去了每次修改后运行spider的麻烦。 一旦熟悉了Scrapy终端后,您会发现其在开发和调试spider时发挥的巨大作用。 ipython: 简介:如果您安装了 IPython ,Scrapy终端将使用 IPython (替代标准Python终端)。 IPython 终端与其他相比更为强大,提供智能的自动补全,高亮输出,及其他特性。应用:
# 进入到scrapy shell的终端 直接在window的终端中输入scrapy shell 域名
# 如果想看到一些高亮 或者 自动补全 那么可以安装ipython pip install ipython
# scrapy shell www.baidu.com
(1)scrapy shell www.baidu.com (2)scrapy shell http://www.baidu.com (3) scrapy shell "http://www.baidu.com" (4) scrapy shell "www.baidu.com" 语法: (1)response对象: response.body response.text response.url response.status (2)response的解析: response.xpath() (常用) 使用xpath路径查询特定元素,返回一个selector列表对象 response.css() 使用css_selector查询元素,返回一个selector列表对象 获取内容 :response.css('#su::text').extract_first() 获取属性 :response.css('#su::attr(“value”)').extract_first() (3)selector对象(通过xpath方法调用返回的是seletor列表) extract() 提取selector对象的值 如果提取不到值 那么会报错 使用xpath请求到的对象是一个selector对象,需要进一步使用extract()方法拆 包,转换为unicode字符串 extract_first() 提取seletor列表中的第一个值 如果提取不到值 会返回一个空值 返回第一个解析到的值,如果列表为空,此种方法也不会报错,会返回一个空值 xpath() css() 注意:每一个selector对象可以再次的去使用xpath或者css方法
标签:xpath,shell,selector,scrapy,终端,ipython,response From: https://www.cnblogs.com/zhaolei0419/p/17024245.html