Comment télécharger un fichier avec Python ?

Article publié le et mis à jour le .

Comment télécharger un fichier avec Python ?

Pour télécharger des fichiers à partir d’une URL en utilisant Python, on utilise la méthode requests.get() du package Python requests.

Par exemple, pour télécharger l’icone du site StackOverflow, on peut utiliser :

import requests

URL = "https://www.stackoverflow.com/favicon.ico"
response = requests.get(URL)
open("stackoverflow.ico", "wb").write(response.content)

Et voilà, le favicon du site de StackOverflow est sauvé dans le dossier où vous avez lancé votre script !

Pas de panique si vous ne comprenez pas ces lignes de codes, je vous explique tout dans ce tutoriel. On va aussi voir d’autres manières pour télécharger un fichier avec Python.

Comment télécharger un fichier avec Python ?

Pour télécharger un fichier depuis une URL en utilisant Python, on suit ces trois étapes :

  • On installe le module requests et on l’importe dans notre projet.
  • On utilise requests.get() pour télécharger le fichier sur lequel pointe.
  • On sauve le fichier dans un fichier de notre système en appelant open().

Par exemple :

Téléchargons l’icône de StackOverflow à l’aide de Python. L’icône se trouve sur cette URL URL https://www.stackoverflow.com/favicon.ico.

Pour commencer, on installe le package requests en executant dans votre terminal la ligne de commande

pip install requests

Ensuite, on peut l’utiliser pour télécharger n’importe quel fichier sur internet :

# 1. On importe la bibliothèque requests
import requests

URL = "https://www.stackoverflow.com/favicon.ico"

# 2. On télécharge le fichier surlequel pointe l'URL
response = requests.get(URL)

# 3. On sauve réponse dans un nouveau fichier appelé stackoverflow.ico
open("stackoverflow.ico", "wb").write(response.content)

Après avoir exécuté ce morceau de code, vous voyez l’icône de StackOverflow apparaître dans dossier contenant votre script.

Si vous ne pouvez pas utiliser requests ou que vous êtes simplement curieux de savoir quelles autres modules Python on peut utiliser pour télécharger des scripts, alors voyons ensemble comment faire çavec wget et urllib

Comment télécharger un fichier avec wget en Python ?

Avant de pouvoir télécharger des fichiers à l’aide de wget, on doit installer le package sur notre machine.

Ouvrez une fenêtre de ligne de commande et exécutez :

pip install wget

Suivez ensuite les deux étapes suivantes pour télécharger un fichier :

  1. Importez le module wget dans votre projet avec import wget
  2. Utilisez wget.download() pour télécharger un fichier depuis une URL spécifique et l’enregistrer sur votre machine.

Par exmeple, pour récupérez l’icône de StackOverflow à l’aide de wget :

import wget

URL = "https://www.stackoverflow.com/favicon.ico"

response = wget.download(URL, "stackoverflow.ico")

Exécuter ces lignes de codes et vous pourrez voir une icône de StackOverflow apparaître dans le dossier contenant votre script Python.

Comment télécharger un fichier avec urllib en Python ?

Avant de pouvoir télécharger des fichiers en utilisant urllib, vous devez installer le module.

Ouvrez une fenêtre de ligne de commande et exécutez :

pip install urllib

Suivez ensuite les deux étapes suivantes pour télécharger un fichier :

  1. Importez le module urllib dans votre projet.
  2. Utilisez la méthode request.urlretrieve() d’urllib pour télécharger un fichier depuis une URL spécifique et l’enregistrer sur votre machine.

À titre d’exemple, récupérons l’icône de StackOverflow en utilisant urllib :

from urllib import request

URL = "https://www.stackoverflow.com/favicon.ico"

response = request.urlretrieve(URL, "stackoverflow.ico")

Exécuter ces lignes de codes et vous pourrez voir une icône de StackOverflow apparaître dans le dossier contenant votre script Python.

Que faire maintenant ?

Félicitations ! Vous savez télécharger des fichiers de manière totalement automatisée avec Python.

Avec ce nouveau super-pouvoir vous pouvez abuser de certains sites et récupérer plein de fichiers sur internet 😈

Vous pourriez par exemple créer des bots ou des petits scripts pour automatiser certaines taches de votre quotidien.

Je vous recommande mon article sur l’automatisation et les bots si c’est un sujet qui vous intéresse.

Vous aimerez aussi surement mes autres tutoriels et astuces sur le langage de programmation Python.

Si c’est une vidéo que vous souhaitez télécharger, alors consultez mon article Comment télécharger des vidéos Vimeo ?