使用 BeautifulSoup 更新 Django 数据库

用户8975899

我对 Django 很陌生。我一直在浏览教程,并决定从我自己的一些东西开始,并需要一些关于最佳前进方向的建议。

我正在创建一个简单的站点,它运行存储在 postgreSQL 表中的一小部分 URL 列表,并使用 Beautiful Soup 从每个 URL 页面中提取数据并将其存储在记录中..(它只是记录在主页上的统计数据每个)

我已经设置了模型和相关的类列表视图来显示它们。即将开始运行美丽的汤部分,想知道应该将代码实际放在哪里来运行并“抓取”每个站点的数据?

它应该在调用类视图时调用吗?某种模型管理器?只是一个定制的功能还是什么?如果可能,我想使用 Ajax 每隔一段时间更新这些数据,因此它需要适应这种情况。

希望这不是太模糊。很高兴发布我所拥有的,如果你觉得这很有用,尽管它实际上只是一个简单的模型和类 ListView。

谢谢!

小的

您不应该在视图中进行任何抓取。这可能会使用户感到困惑,因为在抓取过程中页面不会加载。用户还可能刷新页面并导致您的代码运行两次。此外,您可能为项目安装的许多代理可能会超时。

这更像是一种后台进程类型的工作。最简单的方法是使用自定义管理命令创建一个名为文件scrape.pymanagement/commands不要忘记__init__.py例如:

polls/
    __init__.py
    models.py
    management/
        __init__.py
        commands/
            __init__.py
            scrape.py
    tests.py
    views.py

在该文件中使用:

from django.core.management.base import BaseCommand, CommandError

class Command(BaseCommand):
    def handle(self, *args, **options):
        self.stdout.write(self.style.SUCCESS('I am a scraper!'))

最后不要忘记运行你的新命令:

python manage.py scrape

您可能想使用 cron 作业来设置它。

有关更复杂的用例,请参阅Celery

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

使用数据库结果更新Django选择字段

来自分类Dev

在Django中使用AJAX更新数据库

来自分类Dev

如何使用提交按钮更新我的Django数据库?

来自分类Dev

使用外键和Django更新MySQL数据库

来自分类Dev

使用数据库结果更新Django选择字段

来自分类Dev

如何使用django将数据更新到sql数据库中的表中

来自分类Dev

数据库中的Django更新对象

来自分类Dev

通过javascript更新Django数据库

来自分类Dev

数据库中的Django更新对象

来自分类Dev

使用Django(modify_personal_info)使用特定的表单字段更新数据库实例

来自分类Dev

使用IF条件时,如何在django中的单个查询中更新数据库?

来自分类Dev

如何使用Django表单或ModelForm更新数据库表记录子集中的单个列?

来自分类Dev

如何使用脚本更新Django / Heroku项目中的生产数据库

来自分类Dev

我应该使用django-celery来递归更新数据库吗?

来自分类Dev

我正在尝试使用 get() 方法更新数据库中的数据,但 get() 在 django 中没有更新

来自分类Dev

我正在尝试使用 get() 方法更新数据库中的数据,但 get() 在 django 中没有更新

来自分类Dev

如何使用DataRow更新数据库?

来自分类Dev

使用javascript变量更新数据库

来自分类Dev

使用Java从onClick更新数据库

来自分类Dev

使用变量更新数据库表

来自分类Dev

使用循环更新数据库表

来自分类Dev

使用javascript更新数据库值

来自分类Dev

使用AJAX表单更新数据库

来自分类Dev

使用MYSQLi更新数据库

来自分类Dev

使用Laravel更新数据库

来自分类Dev

使用php更新sql数据库

来自分类Dev

使用Codeigniter更新mysql数据库

来自分类Dev

使用JavaScript从数据库更新JSON

来自分类Dev

使用 post() 更新数据库

Related 相关文章

热门标签

归档