это мой код.
from API.helpers import get_weather_data, json_to_df, create_dict
import schedule, time
URL = 'https://pm1aapplicantsdata.blob.core.windows.net/databases/CitiesWeather/CitiesWeather.csv'
columns = ["name","sys.country","main.temp",
"main.humidity","main.pressure",
"visibility", "wind.speed"]
def weather_api(URL):
dict = create_dict(URL)
for city, code in dict.items():
data = get_weather_data(city, code)
json_to_df(data, columns)
schedule.every(10).minutes.do(weather_api())
while True:
schedule.run_pending()
time.sleep(1)
Что я хочу сделать, это запустить его через определенные регулярные интервалы.Тем не менее, я получаю сообщение об ошибке "weather_api() missing 1 required positional argument: 'URL'"
.Я пытался передать его в расписание schedule.every(10).minutes.do(weather_api(URL))
, но затем я получаю the first argument must be callable
ошибку.Также в этом случае ...
def weather_api():
URL = 'https://pm1aapplicantsdata.blob.core.windows.net/databases/CitiesWeather/CitiesWeather.csv'
dict = create_dict(URL)
for city, code in dict.items():
data = get_weather_data(city, code)
json_to_df(data, columns)
schedule.every(10).minutes.do(weather_api())
while True:
schedule.run_pending()
time.sleep(1)
... ошибка остается.Я пытался использовать Advanced Python Scheduler раньше, но проблема была та же.Мой скрипт отлично работает в противном случае.Что я делаю не так?
Большое спасибо заранее