• Python爬虫学习笔记(七)


    数据存储:

    Json:

    XML:

    json是轻量级的数据交互格式

    HTML:

    给用户看的,展示数据的

    数据交互格式:

    简单理解就是一个字点或者list

    书写格式:

    1. 不能写注释
    2. key:Value(必须都是双引号)
    3. 末尾不能写逗号
    4. 整个文件有且仅有一个{ }或[ ]

    模块操作:

    字符串:

    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": "u5f20u4e09", "age": 20}, {"name": "u674eu56db", "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:

    基本操作自行百度~

  • 相关阅读:
    词典 字符串+DP
    N 色球 数学
    loj6482. LJJ 爱数数
    loj2671. 「NOI2012」骑行川藏
    无标号生成树计数
    uoj272. 【清华集训2016】石家庄的工人阶级队伍比较坚强
    uoj328. 【UTR #3】量子破碎
    loj6402. yww 与校门外的树
    loj6674. 赛道修建
    06:MySQL分组查询子查询笔记6
  • 原文地址:https://www.cnblogs.com/3cH0-Nu1L/p/14495340.html
Copyright © 2020-2023  润新知