zoukankan      html  css  js  c++  java
  • json解析模块

    json.loads(json)

    把json格式的字符串转为Python数据类型

    html_json = json.loads(res.text)

    json.dumps(python)

    把 python 类型 转为 json 类型

    import json
    ​
    # json.dumps()之前
    item = {'name':'QQ','app_id':1}
    print('before dumps',type(item))
    # json.dumps之后
    item = json.dumps(item)
    print('after dumps',type(item))

    json.load(f)

    将json文件读取,并转为python类型

    import json
    ​
    with open('D:\spider_test\xiaomi.json','r') as f:
        data = json.load(f)
    ​
    print(data)

    json.dump(python,f,ensure_ascii=False)

    把python数据类型 转为 json格式的字符串,一般让你把抓取的数据保存为json文件时使用

    参数

    • python: python类型的数据(字典,列表等)
    • f: 文件对象
    • ensure_ascii: ensure_ascii=False # 序列化时编码
    import json
    
    # 示例1
    item = {'name': '金毛狮王', 'card': '屠龙刀'}
    with open('yt.json', 'a') as f:
        json.dump(item, f, ensure_ascii=False)
    
    # 示例2
    item_list = [
        {'name': '紫衫龙王', 'card': '123'},
        {'name': '青翼蝠王', 'card': '456'}
    ]
    with open('ystlj.json', 'a') as f:
        json.dump(item_list, f, ensure_ascii=False)

    练习: 将腾讯招聘数据存入到json文件

    # 1. __init__()
        self.f = open('tencent.json','a')
        self.item_list = []
    # 2. parse_page()
        self.item_list.append(item)
    # 3. main()
        json.dump(self.item_list,self.f,ensure_ascii=False)
        self.f.close()

    json模块总结

    爬虫用到json最多

    1、数据抓取 - json.loads(html)

      将响应内容由: json 转为 python

    2、数据保存 - json.dump(item_list,f,ensure_ascii=False)

      将抓取的数据保存到本地 json文件

    抓取数据一般处理方式

    1. txt文件
    2. csv文件
    3. json文件
    4. MySQL数据库
    5. MongoDB数据库
    6. Redis数据库
  • 相关阅读:
    Tomcat的安装配置与JavaWeb入门教程
    傅立叶变换系列(一)傅立叶系列的由来
    剑指Offer(四):重建二叉树
    《C++数据结构-快速拾遗》 手写链表
    《C++数据结构-快速拾遗》 基础常识
    《机器学习实战》线性回归
    剑指Offer(三):从尾到头打印链表
    博客美化操作
    偏差、方差和噪声的权衡关系
    《机器学习实战》AdaBoost算法(手稿+代码)
  • 原文地址:https://www.cnblogs.com/LXP-Never/p/11385892.html
Copyright © 2011-2022 走看看