美文网首页
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