Python CSV檔案模組的使用案例分析
阿新 • • 發佈:2020-01-09
本文例項講述了Python CSV檔案模組的使用。分享給大家供大家參考,具體如下:
1、CSV模組使用流程
1、匯入模組
impport CSV
2、開啟檔案(xxx.csv)
with open('xxx.csv','a',encoding='utf-8') as f:
- 1、a和 a+ ‘追加'功能
a 追加寫
a+ 追加寫讀(先寫後讀)
- 2、r 和 r+
r 只讀
r+讀寫,先讀後寫
- 3、w,w+
w 只寫
w+寫讀 先寫後讀
3、初始化寫入物件
writer = csv.wirter()
4、寫入資料
writer.writerow(['孫悟空','蘭陵王'])
案例:
貓眼電影top10榜單的爬取
1、網址:url
2、目標:爬取自己想要的檔案
3、儲存本地:csv檔案
4、步驟
- 1、找url規律
第一頁:https://maoyan.com/board/4?offset=0
第4頁:https://maoyan.com/board/4?offset=30
第n頁:offset=(n-1)*10
- 2、寫正則表示式
'<div class="movie-item-info".*?title="(.*?)".*?class="star">(.* ?)</p>.*?class="releasetime">(.*?)</p>',re.S
練習:爬取貓王top10資訊
from urllib import request import re import time import csv class MaoyanSpider(object): def __init__(self): self.headers = {"User-Agent": "Mozilla/5.0 (Windows NT 6.1; rv:2.0.1) Gecko/20100101 Firefox/4.0.1"} self.page = 1 # 用來計數 def get_page(self,url): req = request.Request(url,headers=self.headers) res = request.urlopen(req) html = res.read().decode('utf-8') # 直接呼叫解析函式 self.parse_page(html) def parse_page(self,html): p=re.compile('<div class="movie-item-info">.*?title="(.*?)".*?class="star">(.*?)</p>.*?class="releasetime">(.*?)</p>',re.S) #p=re.compile('<div class="movie-item-info">.*?title="(.*?)".*?class="star">(.* ?)</p>.*?class="releasetime">(.*?)</p>',re.S) r_list = p.findall(html) # 直接呼叫儲存函式 # r_list:[('霸王別姬','張國榮','1993'),(),()] self.write_csv(r_list) # 儲存資料函式 def write_csv(self,r_list): with open('貓眼電影top10.csv','a') as f: writer = csv.writer(f) # 依次寫入每個電影資訊 for r_t in r_list: film = [ r_t[0].strip(),r_t[1].strip(),r_t[2].strip() ] writer.writerow(film) #主函式 def work_om(self): for pn in range(0,41,10): url = 'https://maoyan.com/board/4?offset=%s'%str(pn) self.get_page(url) print('第%d頁爬取成功'%self.page) self.page += 1 time.sleep(4) if __name__ =='__main__': begin = time.time() spider = MaoyanSpider() spider.work_om() end = time.time() print("執行時間%.2f"%(end - begin))
執行截圖:
更多Python相關內容感興趣的讀者可檢視本站專題:《Python操作Excel表格技巧總結》、《Python編碼操作技巧總結》、《Python資料結構與演算法教程》、《Python函式使用技巧總結》、《Python字串操作技巧彙總》、《Python入門與進階經典教程》及《Python檔案與目錄操作技巧彙總》
希望本文所述對大家Python程式設計有所幫助。