Убедитесь, что у вас установлен Python версии 3.10 или выше. Установите необходимые библиотеки, выполнив команду:
pip install google-api-python-client google-auth google-auth-oauthlib python-dotenv
- Перейдите в Google Cloud Console.
- Создайте новый проект:
- Нажмите "Создать проект".
- Укажите название проекта и сохраните.
- Включите YouTube Data API:
- В меню выберите "API и службы" → "Библиотека".
- Найдите и включите YouTube Data API v3.
- Создайте учетные данные для API:
- В разделе "API и службы" → "Учетные данные" нажмите "Создать учетные данные" → "Идентификатор клиента OAuth".
- Выберите тип приложения: "Приложение для рабочего стола".
- Скачайте файл
client_secret.json
с учетными данными.
- Скопируйте файл
client_secret.json
в корень вашего проекта и переименуйте его в соответствии с переменной окруженияYOUTUBE_SECRET_JSON
(например,client_secret_youtube.json
).
- Создайте файл
.env
в корне проекта (возьмите за основу.env.example
):
touch .env
- Добавьте в него переменные:
YOUTUBE_API_KEY="<ваш_ключ_YouTube_API>"
YOUTUBE_SECRET_JSON="client_secret_youtube.json"
YOUTUBE_API_KEY
: ключ API, полученный в Google Cloud Console (раздел "Учетные данные" → "Создать учетные данные" → "Ключ API").YOUTUBE_SECRET_JSON
: имя файла с учетными данными OAuth.
- При первом запуске программы потребуется авторизация через браузер:
- Откройте приложение, и оно автоматически откроет ссылку в браузере.
- Войдите в Google-аккаунт, который имеет доступ к данным YouTube.
- Предоставьте разрешение приложению.
- После успешной авторизации учетные данные будут сохранены в файле
google-oauth2.pickle
для повторного использования. - Перенесите файл
google-oauth2.pickle
на сервер.
- Убедитесь, что файл
.env
настроен корректно. - Выполните запуск программы:
python3 -m app
- Если программа сообщает о необходимости авторизации, следуйте инструкциям, появляющимся в консоли.
Ошибка 1: could not locate runnable browser
- Проблема: На сервере или системе отсутствует графическая оболочка для запуска браузера.
- Решение:
- Выполните авторизацию на локальной машине с графическим интерфейсом.
- Перенесите файл
google-oauth2.pickle
на сервер.
Ошибка 2: No such file or directory: 'client_secret_8971...json'
- Проблема: Файл с учетными данными OAuth отсутствует или указано неправильное имя.
- Решение:
- Убедитесь, что файл существует в корне проекта и имя совпадает с переменной
YOUTUBE_SECRET_JSON
в.env
.
- Убедитесь, что файл существует в корне проекта и имя совпадает с переменной
Ошибка 3: YOUTUBE_API_KEY is invalid
- Проблема: Неправильный ключ API.
- Решение:
- Убедитесь, что вы скопировали правильный ключ из Google Cloud Console и включили YouTube Data API для проекта.
Теперь ваш проект настроен для работы с YouTube API.