Téléchargement de fichiers via HTTP avec Python
Scénario : Vous disposez d'un utilitaire Python qui télécharge des fichiers MP3 à partir d'un site Web et met à jour un fichier XML de podcast. Le téléchargement MP3 est actuellement géré par wget dans un fichier Windows .bat, mais vous recherchez une solution entièrement basée sur Python.
Solution :
Python fournit plusieurs méthodes pour télécharger des fichiers via HTTP au sein de l'écosystème Python. Une approche populaire consiste à utiliser le module urllib.request. L'extrait suivant montre comment télécharger un fichier à l'aide de urllib.request.urlretrieve() :
import urllib.request url = "http://www.example.com/songs/mp3.mp3" filename = "mp3.mp3" urllib.request.urlretrieve(url, filename)
Ce code récupère le fichier à partir de l'URL spécifiée et l'enregistre sous le nom de fichier désigné. Notez que pour Python 2, vous utiliserez import urllib et urllib.urlretrieve.
Vous pouvez également utiliser la bibliothèque de requêtes, qui offre une API plus conviviale. Voici un exemple :
import requests url = "http://www.example.com/songs/mp3.mp3" response = requests.get(url) response.raise_for_status() with open("mp3.mp3", "wb") as f: f.write(response.content)
Ce code effectue une requête GET à l'URL et récupère le contenu du fichier. Il écrit ensuite le contenu dans le nom de fichier spécifié en mode binaire.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!