Завантаження даних за допомогою curl

Опрацювання даних у Shell

Susan Sun

Data Person

Що таке curl?

curl:

  • скорочення від Client for URLs
  • це інструмент командного рядка Unix
  • передає дані на сервер і з нього
  • використовується для завантаження даних з HTTP(S)-сайтів та FTP-серверів
Опрацювання даних у Shell

Перевірка встановлення curl

Перевірте встановлення curl:

man curl

Якщо curl НЕ встановлено, ви побачите:

curl command not found.

Повні інструкції: https://curl.haxx.se/download.html.

Опрацювання даних у Shell

Перегляд довідника curl

Якщо curl встановлено, консоль виглядатиме так:

Знімок початку керівництва curl, наче в темному вікні Терминала

Опрацювання даних у Shell

Перегляд довідника curl

Натискайте Enter, щоб гортати.

Знімок частково прокрученого керівництва curl, наче в темному вікні Терминала

Натисніть q, щоб вийти.

Опрацювання даних у Shell

Вивчення синтаксису curl

Базовий синтаксис curl:

curl [option flags] [URL]

URL обов'язковий.

curl також підтримує HTTP, HTTPS, FTP і SFTP.

Щоб побачити всі доступні опції:

curl --help
Опрацювання даних у Shell

Завантаження одного файла

Приклад:

Один файл збережено за адресою:

https://websitename.com/datafilename.txt

Використайте опційний прапорець -O, щоб зберегти файл з оригінальною назвою:

curl -O https://websitename.com/datafilename.txt

Щоб перейменувати файл, використайте малу -o + нову назву:

curl -o renameddatafilename.txt https://websitename.com/datafilename.txt
Опрацювання даних у Shell

Завантаження кількох файлів за допомогою Globbing Parser

Продовжуючи попередній приклад:

https://websitename.com/datafilename001.txt
https://websitename.com/datafilename002.txt
...
https://websitename.com/datafilename100.txt

Використання Globbing Parser

Наведена команда завантажить кожен файл послідовно від datafilename001.txt до datafilename100.txt.

curl -O https://websitename.com/datafilename[001-100].txt
Опрацювання даних у Shell

Завантаження кількох файлів за допомогою Globbing Parser

Продовжуючи попередній приклад:

https://websitename.com/datafilename001.txt
https://websitename.com/datafilename002.txt
...
https://websitename.com/datafilename100.txt

Використання Globbing Parser

Перебігає файли та завантажує кожен N-й файл (наприклад, datafilename010.txt, datafilename020.txt, ... datafilename100.txt)

curl -O https://websitename.com/datafilename[001-100:10].txt
Опрацювання даних у Shell

Запобіжне усування проблем

У curl є два особливо корисні прапорці на випадок тайм-аутів під час завантаження:

  • -L Перенаправляє HTTP-URL, якщо виникає код помилки 300.

  • -C Відновлює попередню передачу файла, якщо її перервано тайм-аутом.

Об'єднаємо все:

curl -L -O -C https://websitename.com/datafilename[001-100].txt
  • Усі прапорці йдуть перед URL
  • Порядок прапорців не має значення (напр., -L -C -O)
Опрацювання даних у Shell

Успішного curl-інгу!

Опрацювання даних у Shell

Preparing Video For Download...