爬虫学习笔记(八)
Scrapy数据提取及保存
- 数据提取
了解数据提取之前我们应该先去了解xpath的一些路径表达式
符号 | 意思 |
---|---|
nodename | 选取此节点的所有子节点。 |
/ | 从根节点选取。 |
// | 从匹配选择的当前节点选择文档中的节点,而不考虑它们的位置。 |
. | 选取当前节点。 |
… | 选取当前节点的父节点。 |
@ | 选取属性。 |
下面举个简单的例子
<li id="brand-14026" data-initial="A" style="display:block;">
<a href="/list.html?cat=9987%2C653%2C655&ev=exbrand_Apple%5E&cid3=655" rel="nofollow" onclick="searchlog(1,0,14026,71,'品牌::Apple')" title="Apple">
<img src="//img20.360buyimg.com/popshop/jfs/t2989/240/151377693/3895/30ad9044/574d36dbN262ef26d.jpg" width="102" height="36">
Apple
</a>
</li>
这是我随便copy来的一个
当我们想要得到这个的链接的时候就是
response.xpath('//li/a/@href').extract()
这里为什么后面加extract呢可以看看他的几个方法
方法. | 描述 |
---|---|
extract() | 它返回一个unicode字符串以及所选数据 |
extract_first() | 它返回第一个unicode字符串以及所选数据 |
- 数据保存
首先就是要把数据提取出来
然后在进行保存。
- 2.1 保存为txt文件
with open("xxx.txt", 'wb') as f:
str = ":"+(数据)+"\n"
f.write(str.encode())
- 2.2保存为json,csv等形式
前面的文档里面有写过们这里就不进行过多的解释了