Files
outlier-saver-extension/README.md
T
2026-10-25 12:10:38 +03:00

34 lines
3.3 KiB
Markdown

# Outlier Saver
Расширение для Chrome (личное): пока вы смотрите YouTube с установленным VidIQ, оно читает карточки видео и сохраняет те, у которых высокий outlier score. Данные можно выгрузить в JSON или CSV.
## Установка
1. Откройте `chrome://extensions` и включите «Режим разработчика».
2. «Загрузить распакованное расширение» → выберите эту папку.
3. Откройте YouTube (VidIQ должен быть включён) и пролистайте ленту, поиск или страницу канала.
## Как это работает
- Расширение ничего не скачивает и не использует API: оно читает то, что уже нарисовано на странице.
- Со страницы берутся название, ссылка, превью, канал и просмотры; у VidIQ — outlier score и число подписчиков. Просмотры и подписчики те же, что на экране (например, «59 млн»), поэтому округлены.
- Видео сохраняется, если `outlier score ≥ порога` и `просмотры ≥ минимума` (по умолчанию 5 и 10 000, меняются в настройках). Уже сохранённое видео обновляется при каждой встрече.
- Данные лежат в IndexedDB браузера. Кнопки «Скачать JSON» и «Скачать CSV» в popup выгружают всё сохранённое.
- Поддерживаются русский и английский интерфейс YouTube. Собираются карточки на главной, в поиске, в боковой панели просмотра и на страницах каналов; само открытое видео не собирается.
## Если ничего не сохраняется
- Убедитесь, что VidIQ показывает на карточках outlier score и подписчиков.
- Понизьте порог или минимум просмотров в настройках.
- Если YouTube или VidIQ изменили разметку, запустите `npm test`: тест `card.dom` разберёт образцы карточек в Chrome и покажет, что именно не читается. Настоящий образец с главной лежит в `test/fixtures/home-card.html`; чтобы обновить его, скопируйте HTML новой карточки (правый клик → «Просмотреть код» → Copy outerHTML) и поправьте ожидаемые значения в `test/card.dom.test.js`.
## Разработка
Сборки нет. Тесты (Node 22, без зависимостей; тест разбора карточки запускает headless Chrome и пропускается, если Chrome не найден):
```
npm test
```
После изменения кода нажмите «Обновить» у расширения на `chrome://extensions`.