Ich machte eine Flask-Python Web-Anwendung, die das Gerät von Real Madrid kratzt und zeigt es in einer ordentlichen Countdown-Seite. Ich versuche, es über Heroku zu hosten. Ich habe den Scraping-Teil zum Haupt-Python-Skript verschoben und die Scraped-Variablen über render_template übergeben.Erneutes Starten von Heroku Python-Skript in regelmäßigen Abständen
Meine Frage ist, wie läuft das Python-Skript auf den Heroku-Servern? Wird es aufgerufen, wenn jemand die Webseite öffnet oder läuft sie nur einmal und bedient die Anfragen? Wenn es so ist, gibt es eine Möglichkeit, die Server neu zu starten oder das Python-Skript in regelmäßigen Abständen erneut auszuführen, damit sich die Änderungen in den Fixtures auf der Webseite widerspiegeln.
Hier ist meine app.py
import requests
import datetime
from bs4 import BeautifulSoup as bs
from lxml import html
url = 'http://www.realmadrid.com/en/football/schedule'
response = requests.get(url)
html = response.content
soup = bs(html)
loc = soup.find('p', {'class': 'm_highlighted_next_game_location'}).contents
loc1 = loc[0]
if "Santiago" in loc1:
opp = soup.find('div',{'class':'m_highlighted_next_game_team m_highlighted_next_game_second_team'}).strong.contents
else:
opp = soup.find('div', {'class': 'm_highlighted_next_game_team'}).strong.contents
opp1=opp[0]
time = soup.find('div', {'class': 'm_highlighted_next_game_info_wrapper'}).time.contents
time1 = time[0]
date = soup.find('header', {'class': 'm_highlighted_next_game_header'}).time.contents
date1 = date[0]
times = time1.split(":")
dates = date1.split("/")
hour = times[0]
mintemp = times[1]
minutes = mintemp[:-2]
year = dates[0]
month = dates[1]
day = dates[2]
from flask import Flask, render_template
app = Flask(__name__)
@app.route('/')
def index():
return render_template('index.html',hour=hour,minutes=minutes,year=year,month=month,day=day,loc=loc1,opp=opp1)
if __name__ == '__main__':
app.run(debug=True)
P. S: Ich bin mit Heroku zum ersten Mal. Bitte entschuldigen Sie, wenn sich etwas dumm anhört.