美文网首页pythonJSON
Python爬虫之json.loads()、json.load(

Python爬虫之json.loads()、json.load(

作者: 咸甜怪 | 来源:发表于2019-06-08 17:39 被阅读0次
    • json.dumps(),用于数据类型的转换
      json.dumps()用于将dict类型的数据转成str,因为如果直接将dict类型的数据写入json文件中会发生报错,因此在将数据写入时需要用到该函数。
    import json
    
    test1_dict = {'NAME': 'sw', 'phone': '10086'}
    print(test1_dict)
    print('json.dumps转换前的类型是:', type(test1_dict))
    
    test1_str = json.dumps(test1_dict)
    print(test1_str)
    print('json.dumps转换后的类型是:', type(test1_str))
    
    执行结果如下: json.dumps().png
    • json.loads(),用于数据类型的转换
      json.loads()用于将str类型的数据转成dict,因为如果爬虫解码孩子后得到的是网页的字符串,不转换成python类型的数据,无法进行数据提取。
    import json
    
    test1_dict = {'NAME': 'sw', 'phone': '10086'}
    print(test1_dict)
    print('json.dumps转换前的类型是:', type(test1_dict))
    
    test1_str = json.dumps(test1_dict)
    print(test1_str)
    print('json.dumps转换后的类型是:', type(test1_str))
    
    test2_dict = json.loads(test1_str)
    print(test2_dict)
    print('json.loads转换后的类型是:', type(test2_dict))
    
    执行结果如下: json.loads().png
    • json.dump(),跟文件结合一起使用
      json.dump()需要两个参数,没有返回值,多与“w”连用,用于将dict类型的数据转成str,并写入到json文件中。它在底层做了两件事,一件事是将对象(列表)转换为字符串,第二件事是转换成功以后,将转换后的数据写入到文件中。
    import json
    
    test1_dict = {'NAME': 'sw', 'phone': '10086'}
    print(test1_dict)
    print('test1_dict的类型是:', type(test1_dict))
    with open('text1.txt', 'w') as f:
        json.dump(test1_dict, f)
    
    执行结果得到一个text1.txt文件。 json.dump().png
    • json.load(),跟文件结合一起使用
      json.load()用于从json文件中读取数据。与读 "r"连用多,可读出文件的内容,并打印出来。
    import json
    
    test1_dict = {'NAME': 'sw', 'phone': '10086'}
    print('test1_dict的类型是:', type(test1_dict))
    with open('text1.txt', 'w') as f:
        json.dump(test1_dict, f)
        f.closed
    with open('text1.txt', 'r') as f:
        test1_str = json.load(f)
        print(test1_str)
    
    执行结果打印出来text1.txt中的内容。 json.load().png

    总结

    json.loads()、json.dumps():就是用来进行数据类型的转换。
    json.load()、json.dump():只能跟文件结合一起使用。

    相关文章

      网友评论

        本文标题:Python爬虫之json.loads()、json.load(

        本文链接:https://www.haomeiwen.com/subject/xtoixctx.html