敏哥好久沒有動手寫Python,剛好有機會閱讀由洪錦魁老師撰寫以及深智數位出版的新書-Python操作Excel:最強入門邁向辦公室自動化之路 王者歸來。忍不住小試身手,利用Python操作Excel讓百香果交易行情邁向辦公室自動化之路。
在2019年元月1日元旦開始用Python來發展百香果教材,利用數行指令就能讀取百香果的交易行情,而Excel更是辦公室自動化不可或缺的工具,兩者相互結合,就更能讓數據變得更加好用。
以下是程式碼:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 | import requests import json import openpyxl wb = openpyxl.Workbook() ws = wb.active print("目前工作表名稱=", ws.title) ws.title = "百香果交易行情" print("目前工作表名稱=", ws.title) fn = 'passionfruit.xlsx' sheet = wb[ws.title] cell_title = [('A1','交易日期'),('B1','作物名稱'), ('C1', '市場名稱'), ('D1', '平均價'), ('E1','交易量') ] for row in cell_title: sheet[row[0]].value = row[1] rownumber = 1 r = requests.get('https://data.coa.gov.tw/Service/OpenData/FromM/FarmTransData.aspx') text = json.loads(r.text) for row in text: column = 1 if row['作物名稱'] is None: continue if '百香果' in row['作物名稱']: rownumber = rownumber + 1 print ('交易日期:'+row['交易日期']) sheet.cell(row=rownumber, column=column).value = row['交易日期'] column = column + 1 print ('作物名稱:'+row['作物名稱']) sheet.cell(row=rownumber, column=column).value = row['作物名稱'] column = column + 1 print ('市場名稱:'+row['市場名稱']) sheet.cell(row=rownumber, column=column).value = row['市場名稱'] column = column + 1 print ('平均價:'+str(row['平均價'])) sheet.cell(row=rownumber, column=column).value = row['平均價'] column = column + 1 print ('交易量:'+str(row['交易量'])) sheet.cell(row=rownumber, column=column).value = row['交易量'] column = column + 1 wb.save(filename=fn) |
執行結果:
沒有留言:
張貼留言