2017-07-07 100 views
0

我有一個個人網站,我想跟蹤比特幣的價格,但我希望代碼在網站的後端每五分鐘運行一次。Python Django和芹菜periodictasks

我對芹菜很新,所以我不知道我在做什麼。話雖如此,我已經更新了我的installed_apps,我已經導入了djcelery,並且已經完成了設置頁面的所有更新。

我通過管理網站設置了一個週期性任務,因爲它看起來非常簡單,但我仍然無法自動運行代碼,儘管我的功能是一個選項作爲任務。

我相當堅持在這裏,任何幫助將是可怕的。謝謝。

def bitcoin(): 
    url = "https://api.coindesk.com/v1/bpi/currentprice.json" 
    request = Request(url) 
    response = urlopen(request) 
    the_page = response.read() 
    data = json.loads(the_page) 
    btc_price = data['bpi']['USD']['rate'] 
    print('According to CoinDesk, the price of bitcoin is: ' + 
    str(btc_price)) 
+0

什麼是預期的結果?你的問題中沒有django或芹菜代碼。 django和芹菜都是不重要的配置和運行。如果您只想執行計劃任務,則可以使用更簡單的選項。 –

回答

0

您可以檢出具有創建計劃任務的幾個例子Django的芹菜cron schedules文檔。

下面是從自己的文件一個簡單的例子:

from celery.schedules import crontab 

app.conf.beat_schedule = { 
    # Executes every Monday morning at 7:30 a.m. 
    'add-every-monday-morning': { 
     'task': 'tasks.add', 
     'schedule': crontab(hour=7, minute=30, day_of_week=1), 
     'args': (16, 16), 
    }, 
}