Як завантажити папку з Google Диска за допомогою командного рядка

watch 1m, 10s
views 2

08:50, 23.05.2024

Зміст статті
arrow

  • Ознайомлення з gdown
  • Огляд gdrive
  • Отримання облікових даних Google Drive API
  • Робота з gdrive
  • Ознайомлення з rclone
  • Заключення 

Хмарні сховища зарекомендували себе як набагато зручніші варіанти, ніж їхні альтернативи. Найвідомішим хмарним сховищем є Google Диск, і на це є свої причини. Google Диск - це безкоштовне (до 15 ГБ) рішення, яке підтримує віддалений доступ і різні формати документів. Крім того, він має інтуїтивно зрозумілий користувацький інтерфейс, що робить використання сервісу простим. Однак, з нашого досвіду, коли справа доходить до використання його розширеної функціональності, можуть виникнути труднощі.

Наприклад, ви можете захотіти завантажити папку через командний рядок, але, як показує наш досвід, це не так просто, як ви думали.

У цій статті ми допоможемо вам розібратися з процесом завантаження папки з Google Диска за допомогою інструментів командного рядка.

Ознайомлення з gdown

Якщо ви хочете завантажити загальнодоступні файли і папки зі сховища Google Drive на свій пристрій під керуванням ОС Linux за допомогою командного рядка, скористайтеся gdown.

gdown - це інструмент, розроблений для полегшення швидкого завантаження за межами графічного інтерфейсу користувача. Справа в тому, що в середовищі Linux робота через графічний інтерфейс не завжди можлива. У таких випадках gdown є корисним інструментом для отримання файлів з Google Диску за допомогою простих комбінацій командного рядка.

gdown побудовано на Python і призначено для підтримки завантаження великих файлів з Google Диску.

Щоб почати використовувати gdown, вам потрібно завантажити його. Але перш ніж ми розповімо вам, як це зробити, переконайтеся, що папка, яку ви хочете завантажити, є загальнодоступною з налаштуванням спільного доступу - “Anyone with the link”.

Тепер ми можемо приступити до встановлення gdown за допомогою програми встановлення пакетів Python (pip):

$ pip install gdownCopy

Програма пропонує кілька способів завантаження файлів з Google Диску. Один з них - використання функції обміну посиланнями на папку, яку ми хочемо завантажити:

$ gdown --folder https://drive.google.com/drive/folders/OUR-DIRECTORY-IDCopy

Тут ви безпосередньо вставляєте URL-адресу папки, щоб вказати ту, яку хочете завантажити. Крім того, ви можете використати ідентифікатор теки і вказати шлях до неї:

$ gdown --folder OUR-DIRECTORY-ID -O /home/HostZealot/Copy

У цій команді тека ідентифікується через її каталог.

Огляд gdrive

gdrive - це програма, яка підключається безпосередньо до Google Drive для завантаження і вивантаження файлів, а також керування налаштуваннями доступу до файлів.

Щоб завантажити gdrive, нам потрібно зайти на GitHub і після розпакування зберегти двійковий файл у змінній PATH (наприклад, /usr/local/bin):

$ wget https://github.com/glotlabs/gdrive/releases/download/3.9.0/gdrive_linux-x64.tar.gz [...] 
$ tar -xvzf gdrive_linux-x64.tar.gz $ cp ./gdrive /usr/local/bin/Cop

wget - для завантаження файлів gdrive з GitHub; tar -xvzf - для розпакування завантажених файлів; cp - для копіювання розпакованого файлу в бінарний каталог PATH.

Отримання облікових даних Google Drive API

Щоб почати користуватися gdrive, нам потрібно створити обліковий запис Google gdrive, який, у свою чергу, потребує облікових даних Google Drive API. І ось як ви можете це зробити:

  • Відкрийте Google Cloud Console
  • Натисніть “Create a new project”
  • Потім знайдіть Google Drive API та увімкніть його
  • У меню Credentials натисніть кнопку OAuth consent screen
  • Виберіть " External " і натисніть "Create"
  • Вставте необхідну інформацію та натисніть "Save and continue"
  • Натисніть кнопку "Add or remove scopes" і знайдіть Google Drive API
  • Встановіть області та натисніть "Update", а потім натисніть "Save and continue"
  • Натисніть "Add users " і додайте електронну пошту, яку ви хочете використовувати з gdrive, а потім натисніть кнопки "Add " і "Save and Continue"
  • Ознайомтеся з інформацією та натисніть "Back to dashboard"
  • У розділі "Credentials" натисніть "Create credentials" і виберіть "OAuth client ID"
  • Виберіть десктопну версію програми та назвіть її

Це коротка версія інструкції; повна версія доступна на GitHub. Ми будемо використовувати Client ID та Client Secret для налаштування gdrive.

Робота з gdrive

Тепер, коли у нас є облікові дані, ми прив'язуємо gdrive до нашого облікового запису Google:

$ gdrive account addCopy

Далі з'явиться посилання для підтвердження доступу gdrive до Google Диску. Обов'язково підтвердьте доступ.

Тепер ми можемо завантажити папку з Google Диску:

$ gdrive files download --recursive OUR-DIRECTORY-IDCopy

Ідентифікатор теки, вказаний у команді, спрямує нас до потрібної теки для завантаження.

Наразі ми можемо завантажити за допомогою цієї команди лише файли, що містять зображення, відео та стиснуті файли; завантаження документів Google за допомогою цієї команди неможливе.

Щоб завантажити документи Google, нам потрібно трохи змінити команду:

$ gdrive files export OUR-DIRECTORY-ID /home/Baeldung/Sample.docxCopy

Ця команда експортує файли до локального шляху.

Ознайомлення з rclone

rclone - це інструмент для керування файлами, що зберігаються на хмарних платформах, зокрема на Google Диску. Для використання rclone нам потрібно встановити його за допомогою офіційного скрипта:

$ sudo -v ; curl https://rclone.org/install.sh | sudo bashCopy

У цій команді sudo означає привілеї користувача; v збільшує таймаут; curl завантажує скрипт; sudo bash запускає скрипт з привілеями суперкористувача.

Після запуску згаданої команди нам потрібно налаштувати rclone, перш ніж використовувати її. У нашому прикладі ми налаштуємо інструмент через Client ID і Client Secret з Google API.

rclone не використовує ідентифікатори для завантаження, а використовує шляхи до файлів і папок з налаштованого хмарного сховища (в нашому випадку Google Drive):

$ rclone copy gdrive: HostZealot/ /home/hostzealot/local/targetDir/Copy

У цій команді ми вказуємо шлях, куди потрібно завантажити папку Google Drive.

Тепер ви завершили завантаження папки з Google Диску.

Заключення 

У цьому посібнику ми розповіли вам, як завантажити папку з Google Диска за допомогою інструментів командного рядка. Ми використовували gdown і rclone для викачування теки, враховуючи, що вони підтримують лише двійковий вміст.

Поділитися

Чи була ця стаття корисною для вас?

Популярні пропозиції VPS

-10%

CPU
CPU
10 Xeon Cores
RAM
RAM
64 GB
Space
Space
300 GB SSD
Bandwidth
Bandwidth
Unlimited
KVM-SSD 65536 Linux

181.5

При оплаті за рік

-21.5%

CPU
CPU
2 Xeon Cores
RAM
RAM
4 GB
Space
Space
100 GB SSD
Bandwidth
Bandwidth
300 GB
wKVM-SSD 4096 HK Windows

40

При оплаті за рік

-10%

CPU
CPU
4 Xeon Cores
RAM
RAM
2 GB
Space
Space
30 GB SSD
Bandwidth
Bandwidth
Unlimited
10Ge-KVM-SSD 2048 Linux

30.3

При оплаті за рік

CPU
CPU
6 Epyc Cores
RAM
RAM
8 GB
Space
Space
100 GB NVMe
Bandwidth
Bandwidth
Unlimited
Keitaro KVM 8192
OS
CentOS
Software
Software
Keitaro

При оплаті за місяць

-22.2%

CPU
CPU
4 Xeon Cores
RAM
RAM
4 GB
Space
Space
50 GB SSD
Bandwidth
Bandwidth
300 GB
KVM-SSD 4096 HK Linux

33

При оплаті за рік

-10%

CPU
CPU
4 Xeon Cores
RAM
RAM
4 GB
Space
Space
50 GB SSD
Bandwidth
Bandwidth
Unlimited
KVM-SSD 4096 Linux

15.95

При оплаті за рік

-7.9%

CPU
CPU
6 Xeon Cores
RAM
RAM
8 GB
Space
Space
200 GB HDD
Bandwidth
Bandwidth
300 Gb
wKVM-HDD HK 8192 Windows

25.87

При оплаті за рік

-7.4%

CPU
CPU
4 Xeon Cores
RAM
RAM
4 GB
Space
Space
100 GB SSD
Bandwidth
Bandwidth
Unlimited
wKVM-SSD 4096 Windows

23.1

При оплаті за рік

-15.5%

CPU
CPU
6 Xeon Cores
RAM
RAM
8 GB
Space
Space
100 GB SSD
Bandwidth
Bandwidth
80 Mbps
DDoS Protected SSD-KVM 8192 Linux

95

При оплаті за рік

-4.5%

CPU
CPU
4 Xeon Cores
RAM
RAM
4 GB
Space
Space
100 GB HDD
Bandwidth
Bandwidth
300 Gb
wKVM-HDD HK 4096 Windows

16.95

При оплаті за рік

Інші статті на цю тему

cookie

Чи приймаєте ви файли cookie та політику конфіденційності?

Ми використовуємо файли cookie, щоб забезпечити вам найкращий досвід роботи на нашому сайті. Якщо ви продовжуєте користуватися сайтом, не змінюючи налаштувань, вважайте, що ви згодні на отримання всіх файлів cookie на сайті HostZealot.