Descărcarea datelor cu curl

Procesarea datelor în linia de comandă

Susan Sun

Data Person

Ce este curl?

curl:

  • vine de la Client for URLs
  • este un instrument Unix în linia de comandă
  • transferă date către și de la un server
  • se folosește pentru a descărca date de pe site-uri HTTP(S) și servere FTP
Procesarea datelor în linia de comandă

Verificarea instalării curl

Verifică instalarea curl:

man curl

Dacă curl nu este instalat, vei vedea:

curl command not found.

Pentru instrucțiuni complete, vezi https://curl.haxx.se/download.html.

Procesarea datelor în linia de comandă

Navigarea în manualul curl

Dacă curl este instalat, consola va arăta astfel:

Captură de ecran a începutului manualului curl afișat într-o fereastră de terminal întunecat

Procesarea datelor în linia de comandă

Navigarea în manualul curl

Apasă Enter pentru a derula.

Captură de ecran a manualului curl derulat parțial, afișat într-o fereastră de terminal întunecat

Apasă q pentru a ieși.

Procesarea datelor în linia de comandă

Sintaxa curl

Sintaxa de bază curl:

curl [option flags] [URL]

URL-ul este obligatoriu.

curl acceptă și HTTP, HTTPS, FTP și SFTP.

Pentru lista completă a opțiunilor disponibile:

curl --help
Procesarea datelor în linia de comandă

Descărcarea unui singur fișier

Exemplu:

Un singur fișier se află la:

https://websitename.com/datafilename.txt

Folosește flag-ul opțional -O pentru a salva fișierul cu numele original:

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

Pentru a redenumi fișierul, folosește -o (minusculă) + noul nume:

curl -o renameddatafilename.txt https://websitename.com/datafilename.txt
Procesarea datelor în linia de comandă

Descărcarea mai multor fișiere cu Globbing Parser

Continuând cu exemplul anterior:

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

Folosind Globbing Parser

Următoarea comandă descarcă secvențial toate fișierele, de la datafilename001.txt până la datafilename100.txt.

curl -O https://websitename.com/datafilename[001-100].txt
Procesarea datelor în linia de comandă

Descărcarea mai multor fișiere cu Globbing Parser

Continuând cu exemplul anterior:

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

Folosind Globbing Parser

Parcurge fișierele și descarcă fiecare al N-lea fișier (ex.: datafilename010.txt, datafilename020.txt, ... datafilename100.txt)

curl -O https://websitename.com/datafilename[001-100:10].txt
Procesarea datelor în linia de comandă

Depanare preventivă

curl oferă două flag-uri utile în caz de timeout la descărcare:

  • -L Redirecționează URL-ul HTTP dacă apare un cod de eroare 300.

  • -C Reia un transfer de fișier întrerupt înainte de finalizare.

Punând totul împreună:

curl -L -O -C https://websitename.com/datafilename[001-100].txt
  • Toate flag-urile se plasează înainte de URL
  • Ordinea flag-urilor nu contează (ex.: -L -C -O este corect)
Procesarea datelor în linia de comandă

Hai să exersăm!

Procesarea datelor în linia de comandă

Preparing Video For Download...