CoderCastrov logo
CoderCastrov
Парсер

Как запустить 24/7 парсер с использованием Selenium в Google Cloud Platform

Как запустить 24/7 парсер с использованием Selenium в Google Cloud Platform
просмотров
3 мин чтение
#Парсер
Table Of Content

    Привет всем! Как часто у вас возникала ситуация, когда вам нужно было парсить сайт несколько часов или даже дней, но вы не хотели оставлять работающий компьютер и терминал все это время? У меня это часто бывает. И тогда мне попалась на глаза Google Cloud Platform. Если вы еще не знаете, это сервис от Google, который позволяет создавать удаленные виртуальные машины, на которых можно запускать свои программы. Кроме того, приятным сюрпризом является то, что Google предоставляет $300 бесплатного кредита на первые три месяца использования. Поскольку я не нашел полного руководства по этой задаче в Интернете, я решил создать этот пост.

    Первое, что вам нужно сделать, это зайти на https://cloud.google.com/, войти в свою учетную запись Google и перейти в консоль:

    Затем, в выпадающем меню слева выберите Compute Engine - VM Instances и нажмите ENABLE API на появившемся экране.

    В результате вы увидите этот экран, что означает, что ваша учетная запись готова:

    2. Настройка виртуальной машины

    Теперь вам нужно создать виртуальную машину. Для этого нажмите Create instance. На этом шаге вы можете указать имя компьютера, его регион и другие параметры. Я оставлю все без изменений на данный момент.

    *Примечание. Если во время парсинга вы собираете изображение или другие файлы, которые занимают много памяти, увеличьте размер загрузочного диска, который по умолчанию составляет 10 ГБ.

    Теперь подождите несколько минут, пока машина будет создана. После этого вы увидите ее в списке. Чтобы подключиться к ней, нажмите кнопку SSH.

    В новом окне нажмите Connect, если требуется подтверждение, после чего вы увидите терминал удаленного компьютера.

    По умолчанию виртуальная машина уже имеет установленный Python, и вам просто нужно установить pip для установки сторонних библиотек. Для этого в терминале введите следующую команду:

    sudo apt install python3-pip

    Также нам понадобится следующая команда для распаковки chromedriver в дальнейших шагах:

    sudo apt-get install unzip

    После этого установите необходимые вам библиотеки Python с помощью pip. В моем случае это будет просто:

    pip3 install selenium

    Следующее, что вам нужно сделать, это установить последнюю версию браузера Chrome на вашу машину. Для этого выполните следующие команды:

    sudo apt-get install wgetwget [https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb](https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb)sudo apt install ./google-chrome-stable_current_amd64.deb

    После выполнения этих команд вы увидите в выводе терминала версию Chrome, которую вы получили. В моем случае это "Setting up google-chrome-stable (95.0.4638.69–1) …". Теперь нам нужно установить chromedriver.

    Для этого перейдите на https://chromedriver.chromium.org/downloads и нажмите на версию Chrome, которую вы установили. Скопируйте ссылку на файл chromedriver_linux64.zip и в терминале выполните команду с скопированной ссылкой:

    wget -N [https://chromedriver.storage.googleapis.com/95.0.4638.69/chromedriver_linux64.zip](https://chromedriver.storage.googleapis.com/95.0.4638.69/chromedriver_linux64.zip) unzip chromedriver_linux64.zip

    Теперь в терминале введите команду для установки прав на выполнение chromedriver:

    chmod +x chromedriver

    Теперь нам нужно создать Python-скрипт для парсинга. Фактически, вы можете использовать скрипты, которые вы запускали на своем собственном компьютере, но с небольшими изменениями.

    from selenium.webdriver.chrome.options import Options
    from selenium import webdriverchrome_options = Options()
    chrome_options.add_argument('--headless')
    driver = webdriver.Chrome(options=chrome_options, executable_path='./chromedriver')
    ###Ваш код ниже

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

    nano имя_вашего_скрипта.py

    Последнее, что вам нужно сделать, это запустить скрипт. Для этого вам понадобится:

    1. sudo apt-get install screen

    2. Введите команду 'screen' в вашем терминале

    3. Нажмите кнопку Space

    4. Введите в терминале 'python3 имя_вашего_скрипта.py'

    5. Нажмите Ctrl-A, затем Ctrl-D

    Поздравляю! Теперь вы можете закрыть окно, и скрипт будет продолжать работать.