LINE Notifyを使ったPythonアプリをherokuに公開したが、勝手に実行されるのはなぜ?
webからスクレイピングした情報をLINE Notifyを使って通知するPythonアプリをherokuに公開しました。
スケジューラーを使ってもいないのに、定期的に実行されて、Lineに通知が来ます。
herokuの仕様なのでしょうか。
プランはfreeプランです。
herokuのfreeプランは再起動をすると聞いたことがあります。
再起動のタイミングでmain.pyが実行されているのでしょうか。
コードを追加しました。(main.py)
import requests
from bs4 import BeautifulSoup
import urllib.request
r = requests.get("*************")
soup = BeautifulSoup(r.content, "html.parser")
css1 = soup.find_all("p", class_ = "top-text")
t_text = css1[0].getText()
msg = t_text
LINE_TOKEN = "****************"
LINE_NOTIFY_URL = "*******************"
def send_jt_information(msg):
method = "POST"
headers = {"Authorization": "Bearer %s" % LINE_TOKEN}
payload = {"message": msg}
try:
payload = urllib.parse.urlencode(payload).encode("utf-8")
req = urllib.request.Request(
url=LINE_NOTIFY_URL, data=payload, method=method, headers=headers)
urllib.request.urlopen(req)
except Exception as e:
print ("Exception Error: ", e)
sys.exit(1)
def main():
send_jt_information(msg)
if __name__ == '__main__':
main()