В этом посте я расскажу, как сделать из YouTube своё собственное безлимитное облачное хранилище для хранения любых типов файлов.
В этом нам поможет утилита YouTubeDrive с открытым исходным кодом, которая превращает любой файл в MP4-видео и загружает его на YouTube. Благодаря чему можно загружать любые типы файлов на серверы Google. А вот с настройкой придётся немного повозиться.
Получение файла настроек OAuth
YouTubeDrive — консольная утилита, и запустить её просто так не получится. Для реализации нашей затеи нужно перейти в Google Cloud Console и создать новый проект.
Название и прочую информацию можно оставить по умолчанию. После чего на главной странице нажмите кнопку APIs & Services.
На открывшейся странице нажмите ENABLE APIS AND SERVICES.
В поиске укажите YouTube Data API v3
и активируйте его.
Теперь на странице проекта перейдите в раздел Credentials, затем в Create Credentialsи OAuth client ID.
При первом создании надо будет заполнить анкету на согласие обработки данных. Её можно заполнить любой информацией. Если она у вас уже создана, на этом шаге нужно будет выбрать Application Type — Desktop app.
Название опять же можно указать любое. После чего останется только скачать JSON-файл.
Скачанный файл нужно переименовать в .client_secrets.json
.
Установка YouTubeDrive
Для этого у вас на компьютере должны быть установлены Python и Git. Если всё установлено корректно, запустите командную строку и по очереди выполните команды ниже:
git clone https://github.com/lewangdev/youtube-drive.git
cd youtube-drive
python -m venv .venv
.venv/Scripts/activate
Теперь установите зависимости, выполнив команду pip install -r requirements.txt
.
И вот YouTubeDrive готов к работе.
Использование YouTubeDrive
Работа с YouTubeDrive тоже ведётся через командную строку. Для загрузки файла нужно выполнить команду: python -m youtube_drive upload Filename
, где вместо «FileName» указать путь до файла.
После загрузки вы получите ссылку на ваше видео, которое на самом сервисе будет выглядеть примерно так.
Для скачивания видео нужно выполнить команду:
python -m youtube_drive retrieve --video-id=VideoID -o FileNameToBeSaved
где:
- VideoId - ID видео на YouTube;
- FileNameToBeSaved - путь и имя файла, куда его нужно сохранить.