python爬蟲(第一章,第二章)
python爬蟲-json和csv資料格式
python網路爬蟲(一、二)
資料格式
python->json格式
dumps()
1 | import json |
python->json格式
| python資料 | JSON資料 |
|---|---|
| dict | object |
| list,tuple | array |
| str,unicode | string |
| int,float,long | nuumber |
| True | true |
| False | false |
| None | null |
1 | import json |
note:
- json字串是用雙引號
dumps()的sort_key參數
轉成json時,鍵排序
1 | import json |
dumps()的indent參數
轉成json時,設定縮排使其容易閱讀
1 | import json |
json->python格式
loads()
| JSON資料 | python資料 |
|---|---|
| object | dict |
| array | list |
| string | unicode |
| nuumber(int) | int,long |
| nuumber(real) | float |
| true | True |
| false | False |
| null | None |
1 | import json |
每個JSON文件只能放一個JSON物件,要放多個物件,可用一個父JSON包含
1 | import json |
將字典寫入json
1 | import json |
寫入中文時,encoding=’utf-8’,且indent=2, ensure_ascii=False
1 | import json |
讀取json檔案
1 | import json |
應用
1 | import json |
1 | import json |
1 | import json |
應用(建立世界地圖)
1 | import pygal.maps.world |
1 | import json |
1 | import json |
csv
檔案開啟(reader())
1 | import csv |
或者用for迴圈列印
1 | import csv |
或者用for列印串列內容
1 | import csv |
使用串列索引讀取csv
1 | import csv |
檔案開啟(dictreader())
1 | import csv |
將檔案中的file name與last name印出來
1 | import csv |
寫入csv檔(writer)
1 | import csv |
複製csv檔
1 | import csv |
delimiter改變csv的分隔符號
1 | import csv |
寫入csv檔(dictwrite)
1 | import csv |
或用for輸入串列資料
1 | import csv |
writerows寫法:
1 | import csv |
中文寫法:
1 | import csv |
中文讀取:
1 | import csv |
csv專案(使用csv繪製氣象圖表)
讀取檔案資料(標題):
1 | import csv |
列出標題相對索引
1 | import csv |
讀取最高溫和最低溫
1 | import csv |
繪製最低溫圖
1 | import csv |
設定繪圖區大小
1 | import csv |
日期格式
1 | from datetime import datetime |
在圖表上加入日期格式
1 | import csv |
日期旋轉
1 | import csv |
繪製高低溫圖
1 | import csv |
填滿中間區塊
1 | import csv |
pickle
寫入
1 | import pickle |
讀取
1 | import pickle |
python與Microsoft Excel
安裝模組
1 | pip install xlwt |
基本功能(寫入)
建立活頁簿
1 | 活頁簿物件=xlwt.Workbook |
建立工作表
1 | 工作物件=活頁簿物件.add_sheet(sheet,cell_overwrite_ok=True) #第二個參數為True,表示可以重設Excel的儲存格內容 |
將資料寫入儲存格
1 | 工作物件.write(row,col,data) #將data寫入(row,col)位置 |
實作(寫入)
1 | import xlwt |
基本功能(讀取)
開啟excel檔案供讀取
1 | 活頁簿件=xlrd.open.workbook() |
建立工作物件
1 | 工作物件=活頁簿物件.sheet()[index] #上述傳回指定工作表的物件 |
傳回工作表row數
1 | row=工作表物件.nrows |
傳回工作表的col數
1 | cols=工作表物件.ncols |
讀取某rows的數據
1 | list_data=工作表物件.row_valies(rows) #將指定工作表的rows的值已串列格式回傳給list_data |
實作(讀取)
1 | import xlrd |