とあるCSVファイルをPythonでダウンロードして、そのCSVファイルの内容を自分のサイトに反映させるWebサイトをFlaskで作成しました。
自分の環境では、そのプログラムを動かすことでCSVファイルがダウンロードされて、ファイルが更新され、Webサイトも更新されます。
しかし、同じコマンドをHeroku Scheduler上で動かすと、ファイルが更新されず、Webサイトも更新されないままです。
Heroku上でpythonファイルを定期実行し、Heroku上のCSVファイルを更新するにはどのようなコマンドをHeroku Schedulerに実行させれば良いですか?
現在Heroku Schedulerに実行させているのは、以下のコマンドになります。
$ python ./app/get_data.py
ここで実行しているget_data.pyは以下のようなプログラムになります。
import urllib.request opener = urllib.request.build_opener() opener.addheaders = [('User-agent', "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:47.0) Gecko/20100101 Firefox/47.0")] urllib.request.install_opener(opener) dataurl = "欲しいデータのURL.csv" urllib.request.urlretrieve(dataurl, "./app/static/csv/mygetdata.csv")
他に必要な情報があれば追記します。よろしくお願いします。
--(2021/3/5 追記)
https://teratail.com/questions/258611 より、どうやら外部ストレージにデータをアップロードする必要があるかも?
Herokuは自動実行させるために使用してAmazon S3にデータをアップロードして、アクセス時にはS3のデータを読むようにすればいいんですかね?
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。