実現したいこと
pythonからYahooFinance指定データを取得し、指定Excelへ転記するコードを作成したく、教えていただけないでしょうか?
完成状態は、pythonコードのtickers変数にある終値データを図1のG7(1つ目)、
G8(2つ目)....へ転記。
またtickers変数の0番目データには日付が入っており、こちらはA1セルへ転記。
前提
・APIをyfinanceを使用しております。
発生している問題・エラーメッセージ
①図1のファイルに図2が上書きされてしまう。既存ファイル(図1)に対して転記されるようにしたいです。
②tickers変数の最後データのみ転記されてしまう。
該当のソースコード
python
1import datetime 2import yfinance as yf#yahooファイナンスAPI 3import openpyxl 4 5# 転記先のExcelファイルパス 6excel_path = 'C:\\Users\\nakagami\\亮太\\21_資産運用\\資産運用\\テスト_保有株ポートフォリオ.xlsx' 7wb = openpyxl.load_workbook(excel_path) 8ws=wb['保有'] 9c1=ws['B1'] 10 11#ステップ1:yahooファイナンス情報を取得 12#ターゲットを指定 13tickers = ["1655.T", "2002.T"] 14 15#ステップ2:取得情報をExcelて転記 16for i, ticker in enumerate(tickers): 17 data = yf.download(ticker, period='1d', interval="1d") 18 19 # 更新日を転記 20 if i == 0: 21 today1= datetime.date.today() 22 today2= "{0:%Y/%m/%d}".format(today1) 23 c1.value = today2 24 25 # 終値データを指定セルに転記(G7から) 26 closing_prices = data['Close'] 27 for j, value in enumerate(closing_prices): 28 ws.cell(row=7 + i, column=7 + j, value=value) 29 30wb.save(excel_path)
補足情報(FW/ツールのバージョンなど)
仕様環境は、python 3.12になります。
言葉足らずで申し訳ありませんでした。
調査したこと、試したことは、該当コードにもりこんだ結果になります。

回答2件
あなたの回答
tips
プレビュー