姜戈。我如何每 5 秒 运行 我的功能并更新页面
Django. How i can run my function every 5 second and update the page
我有一个 Django 应用程序。我希望脚本每 5 秒更新一次数据库日期并重新加载我的页面。
我尝试了一个简单的:while()
,但这停止了所有代码。我尝试使用异步函数,但没有任何效果
My code: `from django.shortcuts import render
from django.http import HttpResponse
from django.db import models
from main.models import Prices
import requests
from bs4 import BeautifulSoup
import time
# Create your views here.
timeout = 5
def parseSite():
Prices.objects.all().delete()
URL = "https://www.coindesk.com/price/bitcoin"
page = requests.get(URL)
soup = BeautifulSoup(page.content, 'html.parser')
cont = soup.find(class_="coin-info").find_all(class_="coin-info-block")
final_price = cont[0].find(class_="price-large").text
bitoc = Prices(curency_type = "bitcoin", curency_price = final_price)
bitoc.save()
parseSite()
def dates():
bitoc2 = Prices.objects.get(curency_type= "bitcoin")
return bitoc2
def index(request):
data = dates()
return render(request, 'main/index.html', {'data': data})
`
如果您确实需要刷新页面,那么使用 html 元标记可能是一种解决方案。 <meta http-equiv="refresh" content="5">
和 5
以秒为单位。但是如果你需要在页面的一部分进行实时更改,如 Erfan 提到的那样,请使用 websocket & djnago-channels,...
我有一个 Django 应用程序。我希望脚本每 5 秒更新一次数据库日期并重新加载我的页面。
我尝试了一个简单的:while()
,但这停止了所有代码。我尝试使用异步函数,但没有任何效果
My code: `from django.shortcuts import render
from django.http import HttpResponse
from django.db import models
from main.models import Prices
import requests
from bs4 import BeautifulSoup
import time
# Create your views here.
timeout = 5
def parseSite():
Prices.objects.all().delete()
URL = "https://www.coindesk.com/price/bitcoin"
page = requests.get(URL)
soup = BeautifulSoup(page.content, 'html.parser')
cont = soup.find(class_="coin-info").find_all(class_="coin-info-block")
final_price = cont[0].find(class_="price-large").text
bitoc = Prices(curency_type = "bitcoin", curency_price = final_price)
bitoc.save()
parseSite()
def dates():
bitoc2 = Prices.objects.get(curency_type= "bitcoin")
return bitoc2
def index(request):
data = dates()
return render(request, 'main/index.html', {'data': data})
`
如果您确实需要刷新页面,那么使用 html 元标记可能是一种解决方案。 <meta http-equiv="refresh" content="5">
和 5
以秒为单位。但是如果你需要在页面的一部分进行实时更改,如 Erfan 提到的那样,请使用 websocket & djnago-channels,...