我们用 requests抓取到了页面
然后用beautifulsoup 或 pyquery解析提取了目标数据,接下来就是要存储啦。
可以存储为三种数据:
- txt txt存储非常方便,如果不考虑查找和数据结构,就直接选这个吧
- json
- csv
txt:
get_data = '~~~~~~'
with open('data.txt','w',encoding='utf-8') as f:
f.write(get_data)
json:
json数据与str字符串之间的转换:
json.loads( data): 把字符串类型的data转成 json类型
json.dumps( data) : 把 json 类型的数据转成字符串类型
把json类型数据存起来
import json
data = [{'yihao':'泽哥','erhao':'饶哥'}]
with open('rao.json','w',encoding='utf-8') as file:
file.write(json.dumps(data,indent=2,ensure_ascii=False))
把json数据读出来:
import json
with open('rao.json','r') as f:
d = f.read()
print(d,type(d))
d = json.loads(d)
print(d,type(d))
c s v:
写入:
import csv
with open('csvDemo.csv','w',encoding='utf-8') as csvfile:
write = csv.writer(csvfile,delimiter=" ")
write.writerow(['id','name'])
write.writerow(['666','rao'])
write.writerow(['999','hou'])
用delimiter 设定字段间的分隔符为一个空格。
为写入中文,设定编码为utf-8
读出:
import csv
with open('csvDemo.csv','r') as csvfile:
reader = csv.reader(csvfile)
for row in reader:
print(row)