Maison > Questions et réponses > le corps du texte
Comme le montre l'image, il est très difficile de visualiser et de charger des images via le réseau en cliquant avec le bouton droit une par une pour les enregistrer. Existe-t-il un moyen d'écrire un robot pour capturer par lots les images ici ?
仅有的幸福2017-06-28 09:27:48
Cette exigence, si vous savez ramper, est en fait très simple, quelques étapes seulement :
Page d'accueil ou pages avec des images, obtenez les imagesurl
Accédez à l'adresse de l'URL de l'image ci-dessus via la requests
库或者urllib
bibliothèque
Écrire sur le disque dur local au format binaire
Code de référence :
import re, requests
r = requests.get("http://...页面地址..")
p = re.compile(r'相应的正则表达式匹配')
image = p.findall(r.text)[0] # 通过正则获取所有图片的url
ir = requests.get(image) # 访问图片的地址
sz = open('logo.jpg', 'wb').write(ir.content) # 将其内容写入本地
print('logo.jpg', sz,'bytes')
Pour plus de détails, vous pouvez vous référer au document officiel : document de demanderequests
女神的闺蜜爱上我2017-06-28 09:27:48
Oui,
Cinq parties du robot d'exploration :
Planificateur
Déduplication d'URL
Téléchargeur
Analyse de page Web
Stockage de données
L'idée pour télécharger des images est la suivante :
Obtenir le contenu de la page Web où se trouve l'image, analyser la balise img , obtenez l'adresse de l'image, puis URL de l'image pratique, téléchargez chaque image, enregistrez l'adresse de l'image téléchargée dans le filtre Bloom pour éviter les téléchargements répétés, chaque fois que vous téléchargez une image, vérifiez si elle a été téléchargée via l'URL, lorsque l'image est téléchargé en local, vous pouvez enregistrer le chemin de l'image dans la base de données et le fichier image dans le dossier, ou enregistrer l'image directement dans la base de données.
python utilise request+beautifulsoup4
java utilise jsoup
女神的闺蜜爱上我2017-06-28 09:27:48
Si plusieurs sites Web ou un seul site Web doivent être explorés de manière très approfondie, la méthode ci-dessus peut être directement récursive ou approfondie
.