在Python中安排错误

时间:2017-12-11 17:10:57

标签: python scheduled-tasks

我从XYZ网站提取信息并将其保存到sqlite。我希望这个过程每15分钟重复一次。所以我的代码:

import numpy as np
import pandas as pd
import datetime
import urllib
from bokeh.models import HoverTool
from collections import OrderedDict
import sqlite3
from sqlalchemy import create_engine
from apscheduler.schedulers.background import BackgroundScheduler

def get_data():
    query = ("WEBSITE_ADDRESSCOM/XYZ.json")
    raw_data = pd.read_json(query)
    conn = sqlite3.connect('X.db')
    c = conn.cursor()
    disk_engine = create_engine('sqlite:///X.db')
    raw_data.to_sql('table', disk_engine, if_exists='append')
    print("I downloaded", pd.read_sql_query('SELECT * FROM 
    table',disk_engine).shape[0],"cases")
    conn.close()

scheduler = BackgroundScheduler()
scheduler.add_job(get_data, 'interval', minutes=15)
scheduler.start()

但它给了我这个错误。

LookupError:名称没有触发" interval"被发现

此代码适用于Windows。我现在正在尝试使用Mac(使用Python 3)但是虽然我遵循了此链接上的建议,但它仍会出现上述错误 No trigger by the name "interval" was found

1 个答案:

答案 0 :(得分:0)

这就是我所做的,它也适用于Mac。

我更新了setuptools,如下所示:No trigger by the name "interval" was found

然后我在代码下面运行。

sudo -H pip  install --ignore-installed apscheduler

我不确定这是否相关,但我在此过程后重新启动了内核,现在它可以正常工作。