美文网首页
3.python爬虫之scrapy 框架抽取数据

3.python爬虫之scrapy 框架抽取数据

作者: 程序里的小仙女 | 来源:发表于2020-09-09 18:51 被阅读0次
  1. srapybook的所有的代码地址:
    https://github.com/scalingexcellence/scrapybook
    直接克隆到本地就可以运行
    2.在win10系统中
    安装scrapy: pip install scrapy ,检查安装成功否 : scrapy -- version
    3.利用 scrapy shell 调试 要爬取的网站,用 ctrl + D 退出
scrapy shell https://www.baidu.com


输入 response.body 查看返回的网页结构,例子:


抽取前50个字符

4.可以用response.xpath()语法来抽取网页结构中需要的数据
注释:
①通常用 /text() 来获取标签里面的文本内容,
②在xpath的后面加上 .extract() 就表示直接提出内容,不加.extract() 就是返回选择器本身,实例如图:

response.xpath('//h1/text()').extract()

5.数据抽取

  • Selector 选择器 response.xpath() 和 response.css()
    ①. xpath() 和css() 都只返回选择器,只有调用extract() 或者re() 方法的时候,才返回真是的文本数组(list),
In [18]: response.css('.grid')[1].extract()
Out[18]: '<h2 class="grid">热门经验</h2>'

②.这两个选择器可以相互串联起来使用,

In [20]: response.css('.grid')[1].xpath('text()')
Out[20]: [<Selector xpath='text()' data='热门经验'>]

In [21]: response.css('.grid')[1].xpath('text()').extract()
Out[21]: ['热门经验']

③.总结: xpath() 和css(), extract()和re()正则串联用法

  • response.css('.grid')[1].xpath('text()').re('[.0-9]+')

相关文章

网友评论

      本文标题:3.python爬虫之scrapy 框架抽取数据

      本文链接:https://www.haomeiwen.com/subject/mfmqsktx.html