日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

爬虫之 json 数据处理

發(fā)布時間:2023/12/20 编程问答 25 豆豆
生活随笔 收集整理的這篇文章主要介紹了 爬虫之 json 数据处理 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

文章目錄

    • 一、什么是 json
    • 二、json 有四個方法供我們進行數(shù)據(jù)轉換:
    • 三、json 的作用
    • 四、引入 json 包:將json數(shù)據(jù)轉換為字典打印顯示
    • 五、引入 json 包:將字典轉換為json數(shù)據(jù)存儲

一、什么是 json

JSON(JavaScript Object Notation) 是一種輕量級的數(shù)據(jù)交換格式,它使得人們很容易的進行閱讀和編寫。同時也方便了機器進行解析和生成。適用于進行數(shù)據(jù)交互的場景,比如網(wǎng)站前臺與后臺之間的數(shù)據(jù)交互。
JSON與XML格式算是如今互聯(lián)網(wǎng)時代最常用的兩種數(shù)據(jù)格式了,隨著大數(shù)據(jù)時代的到來,JSON數(shù)據(jù)格式正在快速崛起,如今,即使XML也不能與JSON爭鋒,如果你經(jīng)常與網(wǎng)絡打交道的話,JSON數(shù)據(jù)格式是你一定要掌握的。

二、json 有四個方法供我們進行數(shù)據(jù)轉換:

mydict = {'name': 'xiaoming', 'age': 18} #json.dumps 實現(xiàn)python類型轉化為json字符串 json_str = json.dumps(mydict) #json.loads 實現(xiàn)json字符串轉化為python的數(shù)據(jù)類型 my_dict = json.loads(json_str)#json.dump 實現(xiàn)把python類型寫入類文件對象 with open("temp.txt","w") as f:json.dump(mydict,f,ensure_ascii=False,indent=2)# json.load 實現(xiàn)類文件對象中的json字符串轉化為python類型 with open("temp.txt","r") as f:my_dict = json.load(f)

三、json 的作用

Json在數(shù)據(jù)交換中起到了一個載體的作用,承載相互傳遞的數(shù)據(jù)

四、引入 json 包:將json數(shù)據(jù)轉換為字典打印顯示

如果 爬取網(wǎng)頁返回對象是 json 類型

有時直接打印html的結果為:

print(html) print(type(html)) #{"type":"ZH_CN2EN","errorCode":0,"elapsedTime":2,"translateResult":[[{"src":"我喜歡python","tgt":"I like python"}]]} #str

這里html實際上是一個 json 格式的字符串
JSON是一種輕量級的數(shù)據(jù)交換格式,說白了這里就是用字符串把Python的數(shù)據(jù)結構封裝起來
所以只需要解析這個JSON格式的字符串即可

import json target=json.loads(html) type(target) #<class 'dict'>

可以看到通過json將其轉換成了字典,接下來才能輸出我們需要顯示的內(nèi)容

五、引入 json 包:將字典轉換為json數(shù)據(jù)存儲

def write_file(board):print('開始寫入數(shù)據(jù) ==>' + str(board))with open('book.txt','w',encoding='utf-8') as f:f.write(board)

board 這里是一個字典格式的數(shù)據(jù),直接寫入文件會出錯,因為只由字符串才能調(diào)用 write 方法

所以可以借助 json 用字符串將字典封裝起來】

def write_file(board):print('開始寫入數(shù)據(jù) ==>' + str(board))with open('book.txt','w',encoding='utf-8') as f:f.write(json.dumps(board,ensure_ascii=False) + '\n')

總結

以上是生活随笔為你收集整理的爬虫之 json 数据处理的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。