Как развернуть скрап-паука в продакшене?

Этот блог является частью серии обучающих материалов: ЧАСТЬ 1, ЧАСТЬ 2, ЧАСТЬ 3, ЧАСТЬ 4, ЧАСТЬ 5.

Запуск пауков Scrapy на вашем локальном компьютере очень удобен на (ранней) стадии разработки, но не так удобен, когда вам нужно запускать долго работающие пауки или перемещать пауков для непрерывной работы в рабочей среде. Вот тут-то и появляются решения для развертывания пауков Scrapy.

Популярные варианты развертывания пауков Scrapy:

Давайте посмотрим, как мы можем развернуть паука с помощью Scrapyd.

Развертывание на сервере Scrapyd

Scrapyd — это приложение с открытым исходным кодом для запуска пауков Scrapy. Он предоставляет сервер с HTTP API, способный запускать и отслеживать пауков Scrapy.

Чтобы развернуть пауков в Scrapyd, вы можете использовать инструмент scrapyd-deploy, предоставляемый пакетом scrapyd-client. Пожалуйста, обратитесь к документации по scrapyd-deploy для получения дополнительной информации.

Scrapyd поддерживается некоторыми разработчиками Scrapy.

Установить пакеты

pip install scrapyd
pip install scrapyd-client

Запустите сервер скрапид

$ scrapyd

Вы должны увидеть что-то вроде

Если вы запустите http://localhost:6800/ в своем браузере, вы должны увидеть

Теперь у нас есть запущенный сервер scrapyd, мы должны развернуть здесь нашего паука, используя следующие команды.

Обновите quotesspider/scrapy.cfg до следующего кода

scrapy.cfg – это файл конфигурации развертывания, в котором описывается, как вы собираетесь развертывать паука.

[settings]
default = quotesspider.settings
[deploy:local]
url = http://localhost:6800/ # where is your scrapyd server running
project = quotesspider # project name

Теперь беги

$ cd quotesspider
# format: scrapyd-deploy <target> -p project
$ scrapyd-deploy local -p quotesspider

Это украсит ваш проект и загрузит его в цель. Если в вашем проекте есть файл setup.py, он будет использован, в противном случае он будет создан автоматически. В случае успеха вы должны увидеть ответ JSON, подобный следующему:

Теперь вы можете начать планирование/запуск паука, используя

$ scrapyd-client schedule -p <project_name> <spider_name>
$ scrapyd-client schedule -p quotesspider quotes

Теперь, если вы зайдете на http://localhost:6800/jobs, вы увидите, что наш паук работает.

Вы можете посмотреть журнал

Ууууу !! Мы развернули нашего паука. Вы можете запустить scrapyd где угодно (может быть в облаке), заменить url на scrapy.cfg и развернуть таким же образом.

Это обертка!!

Удачной разборки!! 🕷

Пожалуйста, оставьте комментарий, если у вас возникнут какие-либо проблемы