iT邦幫忙

2021 iThome 鐵人賽

DAY 8
0
影片教學

文組生的Python爬蟲之旅系列 第 8

Day8 JSON檔處理

今天的內容為介紹另一種檔案格式—JSON檔,是一位爬取網路資料時常會碰到的朋友~
趕快趁現在好好的認識一下它吧!/images/emoticon/emoticon47.gif

Yes

以下為影片中有使用到的程式碼

#將Python資料轉成json格式
import json

list_1 = [10, 20, 30, 40, 50]
tuple_1 = (1, 2, 3, 4, 5)
dict_1 = {'animal' : 'Jellyfish' , 'kg' : 35 , 'age' : 100}

json_list = json.dumps(list_1)
json_tuple = json.dumps(tuple_1)
json_dict = json.dumps(dict_1)

print(json_list, type(json_list))
print(json_tuple, type(json_tuple))
print(json_dict, type(json_dict))
#json格式轉成Python資料
import json

json_array = '[10, 20, 30, 40, 50]'
json_obj = '{"animal" : "Jellyfish" , "kg" : 35 , "age" : 100}'

python_list = json.loads(json_array)
python_dict = json.loads(json_obj)

print(python_list, type(python_list))
print(json_obj, type(python_dict))
#儲存json檔案
#C:\\Users\\ASUS\\Desktop\\json\\需改成您想儲存此檔案的路徑
import json

python_dict = {'animal' : 'Jellyfish' , 'kg' : 35 , 'age' : 100}
fn = 'C:\\Users\\ASUS\\Desktop\\json\\test1.json' #檔案名稱test1.json

with open(fn, 'w') as json_obj:
    json.dump(python_dict, json_obj)
print("儲存成功")
#中文資料儲存問題
#C:\\Users\\ASUS\\Desktop\\json\\需改成您想儲存此檔案的路徑
import json

python_dict = {'動物' : '水母' , '公斤' : 35 , '年齡' : 100}
fn = 'C:\\Users\\ASUS\\Desktop\\json\\test2.json' #檔案名稱test2.json

with open(fn, 'w') as json_obj:
    json.dump(python_dict, json_obj)
print("儲存成功")
#解決方法
#C:\\Users\\ASUS\\Desktop\\json\\需改成您想儲存此檔案的路徑
import json

python_dict = {'動物' : '水母' , '公斤' : 35 , '年齡' : 100}
fn = 'C:\\Users\\ASUS\\Desktop\\json\\test3.json' #檔案名稱test3.json

with open(fn, 'w', encoding = 'utf-8') as json_obj:
    json.dump(python_dict, json_obj, ensure_ascii = False)
print("儲存成功")
#讀取json檔案
#C:\\Users\\ASUS\\Desktop\\json\\需更換成test1.json在您電腦中的路徑
import json

fn = 'C:\\Users\\ASUS\\Desktop\\json\\test1.json'
with open(fn) as json_obj:
    data = json.load(json_obj)

print(data)
print(type(data))

如果在影片中有說得不太清楚或錯誤的地方,歡迎留言告訴我,謝謝您的指教。


上一篇
Day7 CSV檔處理
下一篇
Day9 Pandas模組一
系列文
文組生的Python爬蟲之旅30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言