繁体   English   中英

Django 后端脚本调度

Django back-end scripts scheduling

提示:本站收集StackOverFlow近2千万问答,支持中英文搜索,鼠标放在语句上弹窗显示对应的参考中文或英文, 本站还提供   中文繁体   英文版本   中英对照 版本,有任何建议请联系yoyou2525@163.com。

我正在使用 Django 建立一个网站,除此之外,我想显示有关某个主题的最新消息。 例如,我在后端有一个 python 脚本,我想对其进行编程以每 1 小时检索一次最新消息。 同时,我希望能够显示最近检索到的新闻。 我这样做是为了避免每次有人打开我的网站时都会激活脚本。

我的脚本在 news.py 中:

import pprint
import requests
import datetime
import pandas as pd
import dateutil.parser

secret = "********"
url = 'https://newsapi.org/v2/everything?'

quote = 'Amazon'

parameters1 = {
    'q': quote,

    'pageSize': 100,
    'sortby': 'publishedAt',
    'apiKey': secret,
}

response1 = requests.get(url, params=parameters1)
response_json1 = response1.json()
text_combined1 = []
for i in response_json1['articles']:
    if i['content'] != None:
        case = {'Source': i['source']['name'], 'Title': i['title'], 'url': i['url'],
                'Published on:': dateutil.parser.parse(i['publishedAt']).strftime('%Y-%m-%d'), 'Image': i['urlToImage']}
        text_combined1.append(case)
data_amazon = pd.DataFrame.from_dict(text_combined1)
news1 = data_amazon.iloc[0]
news2 = data_amazon.iloc[1]
news3 = data_amazon.iloc[2]

我的views.py 看起来像这样:

from django.shortcuts import render
from .news import *

def dashboard(request):
    content = {'data': data, 'news1': news1, 'news2': news2, 'news3': news3}
    return render(request, 'dashboard.html',
                  content)

我是 web 开发的新手,但我现在的理解是,每次有人向我的网页发送请求时,脚本都会运行,这会导致新闻显示延迟,并且很可能会拒绝访问新闻。 api 由于请求过多。

先感谢您!

1 个回复

一个很好的方法是使用 Celery。 它可以让您在 Django 中安排任务。

您可以在此处阅读有关它的更多信息,并查看其他一些选项。

设置计划作业?

1 Django 使用 Schedule 调度脚本

我正在尝试安排一个脚本,该脚本是为了从网站上抓取数据而制作的。 我试图安排的功能是将数据添加到数据库并检查它是否存在。 这是功能以及我如何实现计划。 问题是当我有这个脚本时,服务器永远不会运行。 我已经将代码放在我的 views.py 中。 所以我粘贴的这段代码是我的应用程序的 views.py ...

2 填充Django表单的后端脚本

我正在尝试创建一个Web前端以使用Django执行各种管理任务。 我从不需要前端,但是现在他们希望不同的BU能够利用它们,并且他们需要一些漂亮的东西才能按下按钮。 所以我想做的是: 用户输入表单数据并提交 使用帖子数据作为args的站点访问的外部脚本 用户被重定向到 ...

3 如何从angularjs提供文件作为django后端脚本的输入?

我有一个python桌面应用程序,它接受2个文件(.hex,.XML)作为输入并生成输出作为另一个文件。 现在我想使用Django和angular作为Web应用程序。 我想将python业务逻辑保留在客户端的服务器和接口部分。 我很困惑,因为我的应用程序接受文件作为输入以及如何解决它。 ...

4 什么是“django后端”?

我一直在遇到很多提到'后端'的django应用程序,但不知道它是什么。 在谷歌周围搜索并没有给出关于django后端的一般结果。 有人可以解释一下吗? 具体来说,请看这些例子: django.contrib.auth。 backends.ModelBackend d ...

5 使用(发布)来自前端的请求在后端触发 Django 脚本

Django(和全栈)的新手,感谢您的帮助! 目标:我的基本需求是能够让 React(或任何前端)从前端内部通信/触发 django 脚本(并最终在脚本运行后将结果返回到前端)。 我创建了以下代码来创建此实用程序,如果您有完全不同的方式来实现此目标,请随时通知我,无论下面的代码如何。 方法:我 ...

6 在 Django 中调度任务

我是 Django 的新手。 我开发了一个程序,让老师可以给学生布置家庭作业。 每个学生的作业都有不同的截止日期。 我想让那个特定学生在作业到期前 1 小时收到一封电子邮件。 因此,例如: 下午 3 点有 HW 的学生 1 将在下午 2 点收到电子邮件 凌晨 1 点到期的HW 学生 2 ...

8 在子调度 django 之前调用父调度

我有一个 mixin,除了其他东西之外,它还简化了request.user object 的调用。 我有一个DetailView的继承人,它有自己的调度方法。 但正如你可以说的那样,它不起作用。 有没有办法优雅地从它的继承人那里调用父dispatch方法? ...

2021-01-10 21:28:28 1 16   django
9 调度 Python 脚本但只是闪烁

我对 python 比较陌生,我遇到了一些日程安排问题。 我有一个简单的 BeautifulSoup 代码,用于解析美国今天的一些新闻标题。 我的代码运行良好,但我尝试添加计划以每 5 秒运行一次。 (它只是测试) 为了执行 py 什么都没有发生,只是在 shell 处闪烁。 我没有任何输出\错误 ...

10 gitlab 上的调度脚本

我知道我们可以在 gitlab 中安排脚本运行(我还没有做过: https ://docs.gitlab.com/ee/ci/pipelines/schedules.html) 在开始这一切之前,我有疑问,假设我想运行使用 Pandas 库的 python 脚本,然后脚本如何运行,因为 gitla ...

2020-09-15 09:33:57 1 148   gitlab
暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2022 STACKOOM.COM