Запуск Selenium для внешнего сайта от Django - PullRequest
0 голосов
/ 29 августа 2018

У меня есть автономный бот Python-Selenium, который имитирует взаимодействие с пользователем на внешнем веб-сайте. Я хотел бы написать некоторые детали, которые попадают с веб-сайта в базу данных. Поэтому мне нравится интегрировать существующего бота в инфраструктуру Django, чтобы упростить запись в базу данных.

Интересно, возможно ли интегрировать этот автономный проект в Django. Если да, я хотел бы знать, как я могу вызвать бота.

1 Ответ

0 голосов
/ 29 августа 2018

Вы можете запустить своего бота любым удобным вам способом, например, через 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 моделей, как показано в примере выше.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...