Data downloaden met Wget en curl
Om een data-analyseproject te starten, is het een goede gewoonte om eerst al je data op één plek samen te brengen. Vaak betekent dit dat je data moet downloaden en ophalen van verschillende locaties, zoals HTTP-servers en databases.
Hoewel curl handig is voor het downloaden van één enkel bestand, is het minder geschikt om meerdere bestanden tegelijk te verwerken. In deze afsluitende oefening gebruiken we zowel curl als Wget om een reeks maandelijkse Spotify-bestanden te downloaden, wat lichte verwerking uit te voeren en alle gedownloade bestanden samen te brengen in onze lokale map.
Deze oefening maakt deel uit van de cursus
Gegevens verwerken in de Shell
Oefeninstructies
- Download de gezipte
201812SpotifyData-data vanaf de verkorte (doorgestuurde) URL metcurl. Hernoem in dezelfde stap het bestand naarSpotify201812.zip. - Pak
Spotify201812.zipuit, verwijder het oorspronkelijke zipbestand en hernoem het uitgepakte bestand naarSpotify201812.csvvoor consistentie. - Gebruik
url_list.txtenWgetom alle 3 bestanden in één stap te downloaden:Spotify201809.csv,Spotify201810.csvenSpotify201811.csv, met een maximale downloadsnelheid van 2500 KB/s.
Interactieve oefening met praktijkervaring
Probeer deze oefening door deze voorbeeldcode aan te vullen.
# Use curl, download and rename a single file from URL
___ ___ Spotify201812.zip ___ https://assets.datacamp.com/production/repositories/4180/datasets/eb1d6a36fa3039e4e00064797e1a1600d267b135/201812SpotifyData.zip
# Unzip, delete, then re-name to Spotify201812.csv
unzip Spotify201812.zip && rm Spotify201812.zip
mv 201812SpotifyData.csv ___.csv
# View url_list.txt to verify content
cat url_list.txt
# Use Wget, limit the download rate to 2500 KB/s, download all files in url_list.txt
wget ___=2500k -i url_list.txt
# Take a look at all files downloaded
ls