【问题标题】:Running Selenium for an external website from Django从 Django 为外部网站运行 Selenium
【发布时间】:2026-01-05 23:55:02
【问题描述】:

我有一个独立的 Python-Selenium 机器人,可以模拟外部网站中的用户交互。我想将从网站获取的一些详细信息写入数据库。所以我喜欢将现有的机器人集成到 Django 框架中,以便更轻松地写入数据库。

我想知道是否可以将这个独立项目集成到 Django 中。如果是,我想知道如何触发机器人。

【问题讨论】:

    标签: python django selenium django-models automated-tests


    【解决方案1】:

    您可以以任何您喜欢的方式触发您的机器人,例如通过 cron 作业。但是,有几件事需要考虑。首先,您的机器人需要在与您的 Django 项目相同的虚拟环境中运行。其次,您的 Django 项目根必须在 sys.path 中可用。像这样的:

    import os
    import sys
    import django
    
    sys.path.append('/path/to/your/django-project-root')
    os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'your_project.settings')
    django.setup()
    # Do your stuff, e.g:
    from my_app.models import MyModel
    
    value1, value2 = get_data_from_somewhere()
    MyModel.objects.create(param1=value1, param2=value2)
    

    运行django.setup() 后,您可以在 Django 项目的上下文中执行任何代码,包括通过模型 API 保存数据,如上例所示。

    【讨论】: