Скрипт статуса аккаунтов.txt
Скрипт для экспорта статистики рекламных кампаний
Одним из главных преимуществ МСС было, что можно было всю статистику с акков собирать в одном месте. Если же работать с обычных акков, то появляется небольшая проблема, что нужно заходить на каждый акк отдельно. И для этого был написан скрипт, который собирает и передает всю статку в гугл таблицы.
Для удобства работы со скриптом дам несколько советов:
1. Название кампании прописывайте не стандартное, а с нумерацией, которая будет понятная вам, что это статка именно с этого акка.
2. Статистику лучше выгружать или под конец дня, чтобы на след. день посмотреть, как акк открутил, или продублировать скрипт, чтобы он срабатывал несколько раз за день, а то если поставить, чтобы скрипт срабатывал только утром или в обед, то сложно получить объективную статистику.
3. Столбцы, которые вам не нужны, по типу названия группы объявлений и самого объявления можно сгруппировать, чтобы таблица занимала меньше места на экране.
Дальше, чтобы самому не тыкать много букв, то снова попросил чат гпт расписать суть работы скрипта:
1. Инициализация таблицы и листа
- Открывает таблицу по ID, указанному в SPREADSHEET_ID.
- Проверяет, существует ли лист с названием SHEET_NAME. Если его нет, создается новый лист с этим названием.
2. Настройка заголовков и начальной строки
- Проверяет значение ячейки Y1, которая хранит номер следующей строки для записи данных.
- Если в Y1 ничего нет (первый запуск), добавляет заголовки столбцов на первую строку и форматирует их:
- Устанавливает значение nextRow в 2, если это первая запись.
3. Получение текущих данных аккаунта
- Сохраняет текущую дату и время в формате yyyy-MM-dd HH:mm:ss (например, 2024-11-23 10:00:00).
- Получает данные аккаунта: ID клиента и валюту.
4. Получение статистики за все время
- Выполняет запрос AD_PERFORMANCE_REPORT с данными по кампаниям, группам объявлений и объявлениям (показы, клики, конверсии, стоимость) за все время.
- Создает объект lifetimeStats, где ключом является комбинация названия кампании, группы объявлений и заголовка объявления, а значениями — данные по метрикам за все время.
5. Получение статистики за сегодня
- Выполняет запрос AD_PERFORMANCE_REPORT для получения данных за текущий день: показы, клики, конверсии, стоимость и статусы (кампаний, групп объявлений, объявлений).
- Переходит к построчной обработке данных.
6. Обработка данных и запись в таблицу
- Для каждой строки отчета за сегодня:
1. Формирует ключ (комбинация названий кампании, группы и объявления) для сопоставления с данными за все время.
2. Определяет статусы кампании, группы объявлений и объявления. Если статус включен (enabled), но показы равны 0, статус меняется на not eligible.
3. Рассчитывает CPA (стоимость за конверсию) для данных за сегодня и за все время.
4. Записывает данные в таблицу в формате:
- Общие данные: дата обновления, названия и статусы (кампании, группы, объявления), валюта.
- Метрики за сегодня: показы, клики, конверсии, CPA, стоимость.
- Метрики за все время: показы, клики, конверсии, CPA, стоимость.
- ID аккаунта.
5. Подсвечивает статусы:
- Зеленый фон (#34a853) — если статус включен (enabled).
- Красный фон (#ea4335) — если статус отключен или недоступен.
- Увеличивает номер строки для следующей записи.
7. Форматирование новых данных
- Если были добавлены новые строки, форматирует их:
- Добавляет границы, устанавливает выравнивание по центру.
8. Обновление номера следующей строки
- Обновляет ячейку Y1 значением номера следующей строки (currentRow).
9. Создание или обновление фильтра
- Проверяет, установлен ли фильтр в таблице. Если нет, добавляет фильтр на весь диапазон данных.
10. Логирование результата
- Записывает в лог:
- Сколько строк добавлено.
- Номер следующей строки для записи.
🔔 Подписаться на канал | Чат канала
Одним из главных преимуществ МСС было, что можно было всю статистику с акков собирать в одном месте. Если же работать с обычных акков, то появляется небольшая проблема, что нужно заходить на каждый акк отдельно. И для этого был написан скрипт, который собирает и передает всю статку в гугл таблицы.
Для удобства работы со скриптом дам несколько советов:
1. Название кампании прописывайте не стандартное, а с нумерацией, которая будет понятная вам, что это статка именно с этого акка.
2. Статистику лучше выгружать или под конец дня, чтобы на след. день посмотреть, как акк открутил, или продублировать скрипт, чтобы он срабатывал несколько раз за день, а то если поставить, чтобы скрипт срабатывал только утром или в обед, то сложно получить объективную статистику.
3. Столбцы, которые вам не нужны, по типу названия группы объявлений и самого объявления можно сгруппировать, чтобы таблица занимала меньше места на экране.
Дальше, чтобы самому не тыкать много букв, то снова попросил чат гпт расписать суть работы скрипта:
1. Инициализация таблицы и листа
- Открывает таблицу по ID, указанному в SPREADSHEET_ID.
- Проверяет, существует ли лист с названием SHEET_NAME. Если его нет, создается новый лист с этим названием.
2. Настройка заголовков и начальной строки
- Проверяет значение ячейки Y1, которая хранит номер следующей строки для записи данных.
- Если в Y1 ничего нет (первый запуск), добавляет заголовки столбцов на первую строку и форматирует их:
- Устанавливает значение nextRow в 2, если это первая запись.
3. Получение текущих данных аккаунта
- Сохраняет текущую дату и время в формате yyyy-MM-dd HH:mm:ss (например, 2024-11-23 10:00:00).
- Получает данные аккаунта: ID клиента и валюту.
4. Получение статистики за все время
- Выполняет запрос AD_PERFORMANCE_REPORT с данными по кампаниям, группам объявлений и объявлениям (показы, клики, конверсии, стоимость) за все время.
- Создает объект lifetimeStats, где ключом является комбинация названия кампании, группы объявлений и заголовка объявления, а значениями — данные по метрикам за все время.
5. Получение статистики за сегодня
- Выполняет запрос AD_PERFORMANCE_REPORT для получения данных за текущий день: показы, клики, конверсии, стоимость и статусы (кампаний, групп объявлений, объявлений).
- Переходит к построчной обработке данных.
6. Обработка данных и запись в таблицу
- Для каждой строки отчета за сегодня:
1. Формирует ключ (комбинация названий кампании, группы и объявления) для сопоставления с данными за все время.
2. Определяет статусы кампании, группы объявлений и объявления. Если статус включен (enabled), но показы равны 0, статус меняется на not eligible.
3. Рассчитывает CPA (стоимость за конверсию) для данных за сегодня и за все время.
4. Записывает данные в таблицу в формате:
- Общие данные: дата обновления, названия и статусы (кампании, группы, объявления), валюта.
- Метрики за сегодня: показы, клики, конверсии, CPA, стоимость.
- Метрики за все время: показы, клики, конверсии, CPA, стоимость.
- ID аккаунта.
5. Подсвечивает статусы:
- Зеленый фон (#34a853) — если статус включен (enabled).
- Красный фон (#ea4335) — если статус отключен или недоступен.
- Увеличивает номер строки для следующей записи.
7. Форматирование новых данных
- Если были добавлены новые строки, форматирует их:
- Добавляет границы, устанавливает выравнивание по центру.
8. Обновление номера следующей строки
- Обновляет ячейку Y1 значением номера следующей строки (currentRow).
9. Создание или обновление фильтра
- Проверяет, установлен ли фильтр в таблице. Если нет, добавляет фильтр на весь диапазон данных.
10. Логирование результата
- Записывает в лог:
- Сколько строк добавлено.
- Номер следующей строки для записи.
🔔 Подписаться на канал | Чат канала