Python3数据存储常用形式:TXT、CSV、Excel、JSON

常见的四种数据保存形式

从网络上爬取所有需要的数据,用解析器解析出所有数据之后,接下来就是存储数据。常用到的存储方式可以保存为文本文件或数据库中,文本存储形式多种多样,下面先介绍文件存储的方式!

一、TXT文本存储

将数据保存到TXT文本这种方法操作简单高效,而且TXT文本兼容性很好,基本兼容任何平台,是一种最基本的保存数据的方法。但是不利于检索。

存储方式:
#第一种方式:
with open('data.txt','a',encoding='utf-8') as file:		#创建文件
	file.write()		#写入具体内容
file.close()		#最后一定要记得关闭文件

#第二种方式:
file=open('data.txt','a',encoding='utf-8')		#创建文件
file.write()		#写入内容
file.close()		#关闭文件


二、CSV文件存储

CSV中文叫作逗号分隔值或字符分隔值,其文件以纯文本形式存储表格数据,结构简单清晰。

写入方法:
import csv

with open('data.csv','w',encoding='utf-8') as csvfile1:
	writer=csv.writer(csvfile1)		#调用writer()方法初始化写入对象
	writer.writerow(['id','name','age'])		#调用writerow()方法传入每行数据
	writer.writerow(['1','Mike',20])
	writer.writerow(['2','John',18])

#如果要修改列与列之间的分隔符,可以传入delimiter参数
with open('data.csv','w',encoding='utf-8') as csvfile2:
	writer=csv.writer(csvfile2,delimiter=' ')
	writer.writerow(['id','name','age'])	
	writer.writerow(['1','Mike',20])

#也可以调用writerows()方法同时写入多行
with open('data.csv','w',encoding='utf-8') as csvfile3:
	writer=csv.writer(csvfile3)
	writer.writerow(['id','name','age'])	
	writer.writerows([['1','Mike',20],['2','Bob',15]])
	
读取方法:
import csv
with open('data.csv','r',encoding='utf-8') as csvfile:
	reader=csv.reader(scvfile)
	for row in reader:
		print(row)
	

三、JSON文件存储

json通过对象和数组的组合来表示数据,构造简洁、结构化程度高,是一种轻量级的数据交换格式

读取方法:
import json
str='''
[{
	"name":"Mike",
	"gender":"male",				#tip:json的数据需要用双引号来包围,
	"age":"20"						#不能使用单引号
},{
	"name":"Bob",
	"gender":"male",
	"age":"15"
}]'''
#调用loads()方法将json文本字符串转为json对象
data=json.loads(str)
print(data)

#读取文件:
with open('data.json','r',encoding='utf-8') as file:
	str=file.read()
	data=json.loads(str)
	print(data)
	
写入json方法:
import json
data=[{
	"name":"Bob",
	"gender":"male",
	"age":"15"
}]
with open('data.json','w',encoding='utf-8') as file:
	#调用dumps()方法将json对象转为文本字符串,ensure_ascii参数为false,可以输出中文
	file.write(json.dumps(data,ensure_ascii=False))
	

四、保存成Excel

将数据保存成Excel也是常见的一种数据存储形式,基本的存储方法可见下面代码,但将爬虫获取解析到的数据保存到Excel表格中时要注意保存的逻辑

保存方法:
import xlwt
#第一种:
workbook = xlwt.Workbook(encoding="utf-8")	# 创建一个工作表的对象
sheet = workbook.add_sheet('信息表')		# 设置一个excel表明
sheet.write(0,0,"name")		# 往表格里边填充数据,第一个参数行号,第二个参数列
sheet.write(0,1,"age")
sheet.write(0,2,"height")

sheet.write(1,0,"张三")
sheet.write(1,1,"20")
sheet.write(1,2,"177")
workbook.save("infos.xls")


五、文件常见打开方式:
r以只读方式打开文件
rb以二进制只读方式打开文件
r+以读写方式打开一个文件,文件指针将放在开头
w以写入方式打开一个文件
w+以读写方式打开一个文件,如果文件不存在则创建,否则覆盖
a以追加方式打开一个文件,文件指针放在文件结尾

以上就是数据存储的基本方法啦,这些都是一些基本,在实际爬虫储存过程中要注意具体存储的逻辑,避免只存储到一条数据或者没有存储到数据,可以结合基本方法,看看实例中的数据存储代码!
  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值