今回は日付取得方法の解説になります。
取得した日付をエクセルに書き込みむプログラムを順に解説していきます。
早速コードを記述します。
from datetime import datetime
意味するところは
datetimeモジュール内のdatetime関数を用いるということです。
※モジュールとはプログラムの部品です。
import openpyxl
→openpyxlライブラリをインポートします。
openpyxlはpython上でexcelを操作するためのライブラリになります。
time_now = datetime.now().date
datetime.now()は今日の日付と現在時刻を取得します。
今回は日付だけを取得したいため.date()を追加します。
wb = openpyxl.load_workbook(“datetime.xlsx”)
datetime.xlsxを開いて、変数:wbに格納しています。
※今回はpythonファイルとExcelファイルが同階層に存在するため
datetime.xlsxとファイル名入力だけでいいのですが、そうでない場合
フルパスを記入するようにしてください
ws = wb.worksheets[0]
今回はシートは1つしかないのですが、シートも指定する必要があります。
datetime.xlsxのシートインデックス0番を変数:wsに格納するということです。
つまりSheet1であればwb.worksheets[0]、
Sheet2に書き込みたいのであればwb.worksheets[1]とします。
maxrow = ws.max_row +1
さてセルに株価を入力していきます。
Excelファイルは下記のようにしています。
今日はA2に記入したいですが、明日はA3、その翌日はA4ですね。
そのため最終行を取得します。
ws.max_rowで指定シートの最終行を取得し、その次の行に記入したいわけですので+1をします。
ws.cell(row = maxrow,column = 1).value = time_now
シートwsのA列の最終行へ変数:spを設定します。
wb.save(“datetime.xlsx”) 保存します。
まとめると下記のようになります。
以上で完成ですが、前回記事の内容も組み合わせてより実践的なプログラムにしましょう。
下記の前回記事↓では日経平均株価をスクレイピングして
エクセルに書き込む処理を解説しました。
株価だけの取得だといつの日なのか分からなくなりそうです。
今回の日付取得も一緒にしてしまいましょう。
下記のように取得するコードにしてみます。
コードは下記になります。
日経平均株価の取得は前回解説しましたので割愛します。
株価の書き込み列をcolumn = 2とするところが違いです。
尚、下記のようにすることで
日付の書式を変更することができます。
実行結果
yyyy/mm/dd形式になりました。
任意でいろいろ変更できます。
ググるといろいろ出てきます。
以下参考書籍になります。
優しく書かれていますので初心者向けに最適です。