Создание скрипта для открытия веб-страницы в браузере, входа на страницу и автоматического обновления ее каждые X секунд.

Вопрос или проблема

Я пытаюсь создать скрипт, который автоматически открывает Chrome и выполняет вход на мою веб-страницу, а затем обновляет её каждые 30 секунд.

Я пытался использовать curl, как на этой странице: Как войти на сайт и автоматически обновлять страницу каждые X секунд из терминала?, но безуспешно.

Буду признателен за любую помощь.

Вы можете открыть URL с помощью подобного скрипта:

google-chrome https://example.com &

Для выполнения входа вы можете использовать xdotool, но использование зависит от самой страницы. Например, вы можете отправить несколько TAB, пока фокус не переместится на поле ввода имени пользователя:

wid="$(xdotool getactivewindow | head -n 1)"
xdotool windowactivate "$wid" key --delay 50 "Tab"
xdotool windowactivate "$wid" key --delay 50 "Tab"
xdotool windowactivate "$wid" type --delay 50 "username"
xdotool windowactivate "$wid" key --delay 50 "Tab"
xdotool windowactivate "$wid" type --delay 50 "password"
xdotool windowactivate "$wid" key --delay 50 "Enter"

В качестве альтернативы также можно перемещать курсор мыши и кликать.

И наконец, вы можете отправить F5 в бесконечном цикле, чтобы перезагрузить страницу каждые 30 секунд:

while true; do
  xdotool windowactivate "$wid" key --delay 50 "F5"
  sleep 30;
done

Ответ или решение

Создание скрипта для автоматического открытия веб-страницы в браузере, входа на сайт и периодического обновления страницы может быть полезным решением для множества задач. В этом ответе будет представлено пошаговое руководство по созданию такого скрипта с использованием инструментов на базе Linux.

Шаг 1: Установка необходимых инструментов

Для начала необходимо убедиться, что на вашем компьютере установлены следующие инструменты:

  1. Google Chrome – браузер, который вы будете использовать.
  2. xdotool – утилита для автоматизации ввода с клавиатуры и мыши.
  3. sleep – команда для установки задержек между действиями.

Если xdotool не установлен, его можно установить с помощью следующей команды:

sudo apt-get install xdotool

Шаг 2: Создание скрипта для автоматического входа

Ниже приведен пример скрипта, который откроет веб-страницу, выполнит вход и будет обновлять страницу каждые 30 секунд. Предположим, что на веб-форме есть поля для ввода имени пользователя и пароля, а также кнопка для входа.

#!/bin/bash

# Открытие веб-страницы
google-chrome "https://example.com" &
sleep 5 # Ждем, пока страница полностью загрузится

# Получаем идентификатор активного окна
wid="$(xdotool getactivewindow | head -n 1)"

# Ввод имени пользователя
xdotool windowactivate "$wid" key --delay 50 "Tab"  # Переход к полю имени пользователя
xdotool windowactivate "$wid" type --delay 50 "your_username"
xdotool windowactivate "$wid" key --delay 50 "Tab"  # Переход к полю пароля
xdotool windowactivate "$wid" type --delay 50 "your_password"
xdotool windowactivate "$wid" key --delay 50 "Return" # Нажимаем Enter для входа

# Автообновление страницы каждые 30 секунд
while true; do
  sleep 30 # Ожидание перед обновлением
  xdotool windowactivate "$wid" key --delay 50 "F5" # Обновление страницы
done

Шаг 3: Настройка и запуск скрипта

  1. Сохраните приведенный выше код в файл, например, auto_refresh.sh.
  2. Измените права доступа к скрипту для его выполнения:
chmod +x auto_refresh.sh
  1. Запустите скрипт:
./auto_refresh.sh

Особенности

  • Синхронизация: Важно убедиться, что браузер и страница загружаются достаточно быстро, чтобы избежать несостыковок в потоках. Для этого задайте адекватное время задержки.
  • Проверка полей: В зависимости от структуры вашей страницы может потребоваться настроить количество нажатий клавиши Tab для правильного перехода между полями.
  • Безопасность: Хранение паролей в виде открытого текста в скриптах может представлять угрозу безопасности. Рассмотрите поиск более защищенных методов управления учетными данными.

Заключение

Создание автоматизированного скрипта для входа и обновления веб-страниц может значительно облегчить жизнь при выполнении рутинных задач. Используя предоставленный шаблон, вы можете адаптировать его под свои нужды, изменяя логин, пароль или временные интервалы обновления. Будьте осторожны и соблюдайте меры безопасности, чтобы ваша информация оставалась защищенной.

Оцените материал
Добавить комментарий

Капча загружается...