1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/easychen-checkchan-dist

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
Внести вклад в разработку кода
Синхронизировать код
Отмена
Подсказка: Поскольку Git не поддерживает пустые директории, создание директории приведёт к созданию пустого файла .keep.
Loading...
README.md

Check酱 — это универсальный инструмент для мониторинга веб-контента, который может отслеживать изменения веб-страниц и отправлять уведомления в WeChat.

Магазин установки

Microsoft Edge Google Chrome

Чтобы перейти на страницу магазина, нажмите на соответствующие значки или выполните поиск «Check酱» в магазине.

Официальное видеоруководство

Подробное издание, около 2 часов.

Заявление об открытом исходном коде

⚠️ Плагин для браузера не является открытым исходным кодом. Код в каталоге Docker предназначен только для проверки безопасности и создания мультиплатформенных образов с использованием дополнительных условий лицензии GPLV3:

  1. Не изменять и не удалять встроенный канал Server酱 по умолчанию.
  2. Не подключать другие каналы сообщений, а затем повторно публиковать.
  3. После выполнения двух вышеуказанных условий следуйте лицензии GPLv3.

Последняя версия

  • Плагин Chrome/Edge: 2024.10.05.13.57 Скачать (GitHub без регистрации).
  • Образ Docker (облачный + удалённый рабочий стол два в одном): 2024.10.10.17.20 Docker Hub.
  • Документация: 2024.10.11.10.14.
  • Журнал изменений: GitHub.
  • Экосистема: версия RSSHub плагина с интеграцией Check酱 (исходный код здесь, скачать).

Инструкции по установке образа Docker см. ниже в разделе «Облачная установка».

Что такое Check酱?

Check酱 — это продукт компании Fangtang Qiqiu, инструмент для отслеживания веб-контента. Он включает в себя плагин для браузера Edge/Chrome и облачную версию, которую можно настроить самостоятельно.

На основе плагина он может отслеживать практически любой контент (текст) на веб-странице, за исключением уведомлений браузера, и может быть объединён с Server酱 для отправки уведомлений в WeChat или на мобильные устройства.

Check酱 работает путём открытия веб-страницы в фоновом режиме через плагин для браузера, таким образом полностью имитируя поведение пользователя. Это позволяет отслеживать большинство сложных динамических веб-сайтов, а также различные страницы входа и автоматически продлевать сеансы входа (в большинстве случаев).

Помимо поддержки отслеживания содержимого (Dom), он также поддерживает мониторинг HTTP-статуса (через GET), JSON и RSS.

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

Установка и использование плагина

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

  • Установка

    В настоящее время Check酱 находится в стадии тестирования и ещё не доступен в магазине Edge, поэтому его можно загрузить вручную.

Скачайте ZIP-файл плагина (GitHub без регистрации), распакуйте его в каталог (далее именуемый A).

Откройте страницу плагинов Edge и перейдите в режим разработчика, затем нажмите «Load Unpacked» и выберите каталог A, созданный на предыдущем шаге.

Если загрузка прошла успешно, вы увидите интерфейс Check酱. Если загрузка не удалась, обычно это происходит из-за дополнительной папки в процессе распаковки, попробуйте выбрать подкаталог каталога A.

  • Использование

    Добавление точек мониторинга веб-страниц

После установки плагина откройте веб-сайт, который вы хотите отслеживать, щёлкните правой кнопкой мыши на странице и выберите «Определить местоположение точки мониторинга».

Нажмите, чтобы инициализировать визуальный селектор.

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

Обратите внимание, что область выбора должна содержать текст, иначе она вернёт пустой результат. Многие тексты напечатаны на изображениях, которые также вернут пустые результаты.

Вы перейдёте на страницу добавления.

Можно изменить название, установить интервал мониторинга, задержку и максимальное количество повторных попыток. Перед сохранением рекомендуется нажать кнопку «Тест» перед именем.

Если появится сообщение «Содержимое проверки пусто», это означает, что есть проблема. Повторите попытку наблюдения:

— Если значок не отображается после открытия страницы, увеличьте значение «Задержка чтения» в секундах; — если после открытия всё равно возвращается пустое значение, возможно, автоматически сгенерированный путь селектора CSS неверен.

Его можно заменить автоматически сгенерированным путём браузера:

① Щёлкните правой кнопкой мыши по тексту, который нужно проверить, и выберите «Проверить/проверить элемент».

② Откроется окно инструментов разработчика, и соответствующая строка исходного кода будет автоматически выбрана. На выбранной строке нажмите правую кнопку мыши и выберите «Копировать/Копировать селектор».

③ Скопируйте путь селектора, указанный в буфере обмена, в строку «Путь селектора CSS» и снова нажмите кнопку «Тест».

Если тест пройден, сохраните точку мониторинга, нажав «Сохранить».

Отправка уведомлений на Server酱 и другие устройства через WeChat

При добавлении и изменении точек мониторинга введите Sendkey, чтобы отправить уведомление на Server酱.

Как получить SendKey

Войдите на официальный сайт Server酱, перейдите в раздел «Ключ и API», нажмите «Скопировать», чтобы скопировать ключ.

Как отправить уведомления на другие каналы

Войдите на официальный сайт Server酱, перейдите в раздел «Конфигурация канала» (https://sct.ftqq.com/forward), выберите канал, который необходимо отправить, и настройте в соответствии с инструкциями на странице. Уведомления могут быть отправлены на PushDeer и различные группы ботов.

Если вышеуказанные каналы не соответствуют вашим потребностям, вы можете выбрать «Пользовательский» канал и отправить настраиваемый HTTP-запрос. Этот метод совместим с большинством интерфейсов уведомлений.

Импорт и экспорт всех точек мониторинга

Щёлкните стрелки вверх и вниз в правом верхнем углу списка точек мониторинга, чтобы импортировать и экспортировать все точки мониторинга.

Поделиться и импортировать точки мониторинга

Щелкните «Буфер обмена» в списке точек мониторинга, чтобы экспортировать текущие настройки точек мониторинга в буфер обмена.

Экспортированные данные выглядят следующим образом:

checkchan://title=Server%E9%85%B1%E5%AE%98%E6%96%B9%E7%BD%91%E7%AB%99%E7%8A%B6%E6%80%81&url=https%3A%2F%2Fsct.ftqq.com&type=get&code=200&rss_field=title&delay=3&retry=10

Скопируйте вышеуказанный текст и вставьте его в Check酱 через Ctrl+V, он автоматически распознает и перейдёт к интерфейсу «Добавить точку мониторинга».

Ограничение мониторинга по времени

Некоторые задачи должны выполняться только в определённые периоды времени, чтобы сэкономить ресурсы, мы добавили функцию ограничения периода мониторинга. Например, определённое анимационное изображение обновляется каждую пятницу утром в 10:00, тогда мы можем установить ограничение периода мониторинга следующим образом:

Таким образом, мониторинг не будет запускаться в другое время. Для задач, время выполнения которых невозможно предсказать, можно использовать «Каждую минуту» по умолчанию.

Обратите внимание, что над «Ограничением периода мониторинга» есть «Интервал мониторинга».

Если установлено «Ограничение периода мониторинга», мониторинг будет выполняться только в заданный период времени. Для того чтобы перевести текст, необходимо знать язык оригинала. Пожалуйста, укажите его.

Я могу помочь вам с переводом, если вы предоставите мне эту информацию. SNAP_URL_BASE=<включите функцию скриншотов, указав здесь адрес сервера, если не нужно, оставьте пустым> #например, http://ip.com/

  • SNAP_FULL=1 #скриншот полной веб-страницы

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

Обратите внимание:

  • Функция скриншотов требует большого объёма памяти, на некоторых серверах могут возникать ошибки;
  • В облачной среде и локальной сети разное время ожидания, возможно возникновение ошибок из-за тайм-аута. Рекомендуется увеличить задержку и отключить создание полных скриншотов.

Интерфейс для отправки данных в RSS-канал

Check酱 имеет встроенный интерфейс для динамических страниц, который используется для отправки данных в RSS-канал:

  • Адрес для отправки данных: http://$ip:$port/rss/upload?key=$api_key;
  • Адрес RSS-канала: http://$ip:$port/image/rss.xml?key=$api_key.

Синхронный интерфейс Cookie

Check酱 также имеет встроенный синхронный интерфейс для Cookie:

  • Синхронный URL: http://$ip:$port/cookie/sync?key=$api_key;
  • Пароли для синхронизации: устанавливаются самостоятельно, должны быть одинаковыми в обоих браузерах;
  • Направление синхронизации: один отправляет данные, другой получает;
  • Частота синхронизации: интервал между отправкой и получением данных.

Безопасность облачных задач

Принцип работы облачных задач Check酱 заключается в синхронизации Cookie с облаком, после чего они могут быть просмотрены в браузере. Однако, поскольку исходящий IP-адрес может быть связан с дата-центром или серверной комнатой, высокая частота запросов может вызвать подозрения у системы обнаружения и предотвращения вторжений (IDS/IPS). Если Check酱 развёрнут дома, то его использование будет аналогично использованию на домашнем компьютере.

Поиск и устранение проблем в облаке

Обычно проблемы, связанные с выполнением задач локально, но невозможностью их выполнения в облаке, возникают из-за различий в сетевой среде и программном обеспечении браузера, например:

  1. Структура страницы постоянно меняется: рекомендуется перейти на страницу категорий и выбрать точку мониторинга;
  2. Различия в сетевых условиях компьютера и облака: содержимое, доступное на компьютере, может быть недоступно в облачном центре обработки данных;
  3. Задержка обновления CDN: обновление CDN на компьютере и облачном узле ещё не завершено, что может привести к доступности контента только после завершения обновления;
  4. Плагины браузера изменили структуру страницы: например, AdBlock был использован для блокировки рекламы на локальном компьютере, но не в облаке, что привело к различиям в структуре и сбоям мониторинга.

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

Если это не помогает, проблема может быть связана с различиями в отображении безголового браузера на сервере и локального браузера. Для таких случаев были созданы скриншоты последних неудачных попыток, которые можно найти в меню «Облачные сервисы».

Если задача завершается неудачно и нет скриншота, это означает, что причина неудачи не связана с тем, что CSS-селектор не был найден. Попробуйте увеличить время задержки, это может помочь решить проблему.

На этой странице также можно просмотреть журнал облачных задач, который не включает задачи, запущенные вручную через кнопку «Мониторинг». Если нет доступных для выполнения задач (задачи запускаются автоматически), журнал также может быть пустым.

Использование версии для удалённого рабочего стола

Помимо самостоятельной облачной версии, Check��chan также предоставляет версию для удалённого рабочего стола. Она позволяет подключаться к серверу через VNC и использовать его как локальный браузер.

Версия для удалённого рабочего стола ранее была отдельным образом, теперь она интегрирована в easychen/checkchan, поэтому вы можете использовать её напрямую.

Использование через веб-интерфейс

  • Веб-интерфейс: http:///$BBB:8080;
  • Пароль: 123 (можно изменить командой).

Подключение через VNC

После запуска службы можно подключиться через клиентское программное обеспечение VNC.

  • Соединение: IP-адрес сервера:5900;
  • Пароль: 123 (можно изменить командой).

Подключение к облаку

В удалённом рабочем столе можно напрямую подключиться к тому же контейнеру, в котором работает облако. Введите http://localhost в качестве адреса сервера и используйте API KEY, указанный в YML-файле.

Мобильная версия

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

- WIN_WIDTH=414 
- WIN_HEIGHT=896 
- XVFB_WHD=500x896x16

Пример добавления в команду docker:

docker run -d -p 5900:5900 -v ${PWD}/data:/checkchan/data -e CKC_PASSWD=123 -e WIN_WIDTH=414 -e WIN_HEIGHT=896 -e XVFB_WHD=500x896x16 easychen/checkchan:latest

Особое примечание

Ежедневное потребление контейнера составляет от 300 до 500 МБ. Работа в среде с большим объёмом памяти обеспечивает более стабильную работу, а при возникновении проблем можно попробовать увеличить объём памяти.

Визуальная отладка

Используя тот же образ, можно визуально отлаживать облачные задачи. Установите VDEBUG в YML-файле на ON, затем перезапустите контейнер, чтобы увидеть подробный процесс облачного мониторинга веб-страниц.

environment:
  - "CKC_PASSWD=123"
  - "VDEBUG=ON"

Комментарии ( 0 )

Вы можете оставить комментарий после Вход в систему

Введение

Описание недоступно Развернуть Свернуть
Отмена

Обновления

Пока нет обновлений

Участники

все

Недавние действия

Загрузить больше
Больше нет результатов для загрузки
1
https://api.gitlife.ru/oschina-mirror/easychen-checkchan-dist.git
git@api.gitlife.ru:oschina-mirror/easychen-checkchan-dist.git
oschina-mirror
easychen-checkchan-dist
easychen-checkchan-dist
master