Maison >développement back-end >Tutoriel Python >Méthode d'implémentation de téléchargement d'images en Python (super simple)
Cet article présente la méthode d'implémentation de téléchargement d'images en python (super simple), qui a une certaine valeur de référence. Maintenant, je le partage avec vous. Les amis dans le besoin peuvent s'y référer
L'éditeur ci-dessous vous l'expliquera. Voici un article sur la façon d'implémenter le téléchargement d'images en python (super simple). L'éditeur le trouve plutôt bon, je vais donc le partager avec vous maintenant et le donner comme référence pour tout le monde. Suivons l'éditeur pour y jeter un œil
Parfois, nous avons besoin de rechercher et de télécharger des images sur Internet. Lorsque le nombre est relativement petit, faites un clic droit pour enregistrer, et l'image peut être téléchargée facilement, mais certaines images. Les paramètres spéciaux ne s'affichent pas lors d'un clic droit ou de nombreuses images doivent être téléchargées. Dans ce cas, écrire un code de robot d'exploration Python peut facilement résoudre le problème !
1. 🎜>
#coding=utf-8 import urllib def getHtml(url): page = urllib.urlopen(url) html = page.read() return html html = getHtml("https://tieba.baidu.com/p/5582243679") print html
Le processus de saisie des données de la page définit la fonction getHtml(), dont la fonction est de transmettre une URL à getHtml() et finalement de télécharger le page entière.
2. Filtrage des données de page
import re import urllib def getHtml(url): page = urllib.urlopen(url) html = page.read() return html def getImg(html): reg = r'src="(.+?\.jpg)" pic_ext' imgre = re.compile(reg) imglist = re.findall(imgre,html) return imglist html = getHtml("https://tieba.baidu.com/p/5582243679") print getImg(html)
Dans le filtrage des données de page, une nouvelle fonction getImg est définie ( ), la fonction de cette fonction est de filtrer les adresses d'images au format .jpg.
3. Téléchargement d'images
#coding=utf-8 import urllib import re def getHtml(url): page = urllib.urlopen(url) html = page.read() return html def getImg(html): reg = r'src="(.+?\.jpg)" pic_ext' imgre = re.compile(reg) imglist = re.findall(imgre,html) x = 0 for imgurl in imglist: urllib.urlretrieve(imgurl,'%s.jpg' % x) x+=1 html = getHtml("https://tieba.baidu.com/p/5582243679") print getImg(html)
Obtenez toutes les URL d'images qualifiées via une boucle for et utilisez l'urllib La méthode .urlretrieve() télécharge les données distantes vers le local et les renomme
comme suit :
import urllib.request response = urllib.request.urlopen('http://www.jb51.net/g/500/600') cat_img = response.read() with open('cat_500_600.jpg','wb') as f: f.write(cat_img)
urlopen() Les crochets peuvent être soit une chaîne, soit un objet de requête. Lorsque la chaîne est transmise, elle sera convertie en un objet de requête, donc le code
response = urllib.request.urlopen('http://www.jb51.net/g/500/600') peut également être écrit comme
req = urllib. request .Request('http://www.jb51.net/g/500/600')
1 réponse = urllib.request.urlopen(req)
2. , méthode getcode
code avec open('cat_500_600.jpg','wb') car f:
f.write(cat_img) est équivalent à
1. f = open('cat_500_600.jpg','wb')
2. essayez :
3. )
4. enfin :
5.f.close()
Recommandations associées :
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!