- 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]+')
网友评论