Python爬虫学习笔记(七)
数据存储:
Json:
XML:
json是轻量级的数据交互格式
HTML:
给用户看的,展示数据的
数据交互格式:
简单理解就是一个字点或者list
书写格式:
- 不能写注释
- key:Value(必须都是双引号)
- 末尾不能写逗号
- 整个文件有且仅有一个{ }或[ ]
模块操作:
字符串:
loads():
代码:
# coding=gbk
import json
# 1.字符串和dic list转换
# 字符串(json) --> dict list
data = '[{"name":"张三", "age":20}, {"name":"李四", "age":18}]'
list_data = json.loads(data)
print(data)
print(list_data)
print(type(list_data))
返回:
[{"name":"张三", "age":20}, {"name":"李四", "age":18}]
[{'name': '张三', 'age': 20}, {'name': '李四', 'age': 18}]
<class 'list'>
dumps:
代码:
# coding=gbk
import json
# 1.字符串和dic list转换
# dict list --> 字符串
list2 = [{"name": "张三", "age": 20}, {"name": "李四", "age": 18}]
data_json = json.dumps(list2)
print(data_json)
print(type(data_json))
返回:
[{"name": "\u5f20\u4e09", "age": 20}, {"name": "\u674e\u56db", "age": 18}]
<class 'str'>
文件对象:
load():
代码:
# coding=gbk
import json
# 2.文件对象和dict list转换
# 读取文件(json) --> list dict
fp = open('02new.json', 'r')
result = json.load(fp)
print(result)
返回:
[{'name': '张三', 'age': 20}, {'name': '李四', 'age': 18}]
dump():
代码:
# coding=gbk
import json
# 2.文件对象和dict list转换
# dict list 写入文件
list3 = [{"name": "张三", "age": 20}, {"name": "李四", "age": 18}]
# fp是file path
json.dump(list3, open('02new.json', 'w'))
返回:
CSV:
Test(json ---> csv):
代码:
# coding=gbk
import json
import csv
# 需求:json中的数据转换成CSV文件
# 1.分别 读,创建文件
json_fp = open('02new.json', 'r')
csv_fp = open('03csv.csv', 'w')
# 2.提出 表头,表的内容
data_list = json.load(json_fp)
sheet_title = {"姓名", "年龄"}
# sheet_title = data_list[0].keys())
sheet_data = []
for data in data_list:
sheet_data.append(data.values())
# 3.CSV写入器
writer = csv.writer(csv_fp)
# 4.写入表头
writer.writerow(sheet_title)
//表头:writerow()
# 5.写入内容
writer.writerows(sheet_data)
//内容:writerows()
# 6.关闭两个文件
json_fp.close()
csv_fp.close()
返回:
MongoDB && Redis && MySQL:
基本操作自行百度~
The Working Class Must Lead!