Python 爬蟲 (Json和Csv)檔案儲存

2022-08-30 11:03:17 字數 2935 閱讀 5650

用解析器解析出的資料後,可以通過txt、json、csv等檔案形式進行儲存;

1、txt形式此處略;

2、json檔案儲存

json即js 物件標記,是一種資料格式;

json格式:

json物件:

json陣列:[,,]

例如:

1

import

json

2 str='''

3[,,]

4'''

5print

(type(str))

6 obj=json.loads(str)#

將json格式字串轉為json

7print

(type(obj))8#

取值9print(obj[0]['

name'])

10print(obj[1]['

age'

])11

print(obj[1].get('

name'))

12print(obj[1].get('

address

','北京

'))#

即如果該字段為none或者該key不存在時,會採用預設值;即第二個引數為預設值

1314

#載入乙個json檔案

15 with open("

read.json

",'r

') as file:

16 s=file.read()

17 j=json.loads(s)

18print(j[0]['

name'])

1920

#輸出json

21 jsonarray=[,]

22 with open('

test.json

','w

') as file:

23file.write(json.dumps(jsonarray))

2425

#或者:

26 jsonobj=json.loads(str)

27 with open('

test.json

','w

') as file:

28file.write(json.dumps(jsonobj))

2930

#或者:如果有中文,且想格式化

31 jsonobj=json.loads(str)

32 with open('

test.json

','w

',encoding='

utf-8

') as file:

33 file.write(json.dumps(jsonobj,indent=2,ensure_ascii=false))#

格式化了json,

寫入test.json後格式:

[,,

]

2、csv檔案操作

csv通過分隔符進行風格以純文字形式儲存**資料;該檔案是乙個字串行,可以任意數目組成的記錄,記錄之間通過換行符分離;

將資料寫入csv檔案

1

import

csv2 with open ('

data .csv

', '

w',newline='') as csvfile:#

newline=''設定換行,否則會出現空行

3 writer = csv.writer(csvfile,delimiter='

:')#

delimiter=':' 設定:號隔開

4 writer.writerow (['

id', '

ame','

age'

])5 writer. writerow( ['

10001

', '

mike

',20])

6 writer .writerow (['

10002

','bob

',22])

78 writer.writerows([['

1003

','jel

',23],['

1004

','jesr

',34],['

1005

','esr

',34]])

9csvfile.close()

1011

#字典形式寫入

12 with open('

abc.csv

','w

',newline='',encoding='

utf-8

') as myfile:#

設定w為a則此時會像文件中追加內容

13 fieldnames=['

id','

name

','addr']

14 writer=csv.dictwriter(myfile,delimiter='

!',fieldnames=fieldnames)

15writer.writeheader()

16 writer.writerow()

17 writer.writerow()

18 writer.writerow()

讀取csv檔案:

1

#讀取資料

2 with open('

abc.csv

','r

',encoding='

utf-8

') as myfile:

3 csvreader=csv.reader(myfile)

4for r in

csvreader:

5print(r)

python爬蟲資料儲存JSON儲存

encoding utf 8 import re import requests import json from requests.exceptions import requestexception def get open page url try 請求頭 headers 使用localhos...

python 爬蟲獲取json資料存入檔案時亂碼

解決python使用爬蟲獲取json格式的網頁,輸出以及寫入檔案亂碼的情況 import codecs resp requests.get url,headers headers result json.dumps resp.json ensure ascii false 若不指定ensure as...

爬蟲response返回JSON

當爬蟲返回乙個json資料的時候,可以對返回的response物件直接應用json 方法來將其轉換python物件,相當於對response.text應用load 方法,當返回不是json資料的時候,使用json 方法,會報錯。import requests import json response...