Il s'agit d'une bibliothèque pour récupérer et télécharger des images à partir d'images Google.
Il utilise une requête d'entrée et des arguments pour rechercher et récupérer des objets d'image. Ces images peuvent être protégées sous le droit d'auteur, et vous ne devez rien faire punissable, comme les utiliser pour un usage commercial. Cette bibliothèque est inspirée par google-images-download par Hardikvasa , mais ajoute quelques améliorations de la qualité de vie, telles que la possibilité de récupérer également les URL. Cette bibliothèque ne serait pas possible, cependant, sans leur travail, et les personnes qui travaillent à la poursuivre.
Il y a un argument requis et deux arguments dans les deux fonctions principales:
| Argument | Types | Description |
|---|---|---|
| requête: | str, liste | Une chaîne ou une liste contenant les mots clés à rechercher. Si la requête est une chaîne, elle sera séparée en différents mots clés par des espaces. |
| limite | int | La quantité d'images à rechercher. Ne peut pas être plus grand alors 100. * Par défaut, 1 * |
| Arguments: | diction | Il s'agit d'un dictionnaire contenant de nombreuses valeurs facultatives, qui seront tous répertoriés ici. Ils sont divisés en deux catégories: les arguments de recherche et télécharger des arguments |
| Argument | Types | Description |
|---|---|---|
| téléchargement_format | Str | Spécifie une extension de fichier pour télécharger toutes les images. Doit être une extension de fichier d'image valide reconnue par PIL . * Remarque: cela prend beaucoup plus de temps avec de grandes quantités d'images * |
| annuaire | Str | Cela spécifie le nom du répertoire pour télécharger les images. Cela sera automatiquement créé dans le répertoire que la fonction est appelée, à moins que le répertoire existe déjà ou que le chemin soit spécifié. |
| chemin | Str | Cela spécifie le chemin d'accès pour créer le répertoire de téléchargement dans. |
| temps mort | float int | Cela spécifie le temps maximum que le programme attendra pour récupérer une seule image en secondes. |
| verbeux | bool | Définissez True afin d'imprimer des mises à jour sur les progrès vers la console. |
| Argument | Valeurs acceptées | Description |
|---|---|---|
| couleur | «Red», «orange», «jaune», «vert», «Teal», «bleu», «violet», «rose», «blanc», «gris», «noir», «marron» | Filtrez des images par la couleur dominante. |
| color_type | «Full», «Grayscale», «transparent» | Filtrez des images par le type de couleur, la couleur pleine, les niveaux de gris ou transparent. |
| licence | 'Creative_Commons', 'autres_ licences' | Filtrez des images par la licence d'utilisation. |
| taper | «Face», «Photo», «Clipart», «Lineart», «GIF» | Filtres par le type d'images à rechercher. * À ne pas confondre avec search_format * |
| temps | 'Past_day', 'Past_week', 'Past_month', 'Past_year' | Ne trouve que des images publiées dans le temps spécifié. |
| aspect_ratio | «grand», «carré», «large», «panoramique» | Spécifie le rapport d'aspect des images. |
| search_format | «JPG», «gif», «png», «bmp», «svg», «webp», «ico», «brut» | Filtre les images qui ne sont pas un format spécifié. Si vous souhaitez télécharger des images comme format spécifique, utilisez plutôt l'argument 'Download_Format'. |
Il existe quatre fonctions disponibles, télécharger , URL , image_objects et téléchargement_image , qui fonctionne différemment des autres:
import GoogleImageScraper
images = GoogleImageScraper ( query , limit , arguments )Cela téléchargera des images basées sur les arguments. Les valeurs retournées suivront ce format:
{ 'images' : [ images ], 'errors' : Number of Errors }Chacune des images de la liste des images suivra également un format particulier:
{ 'path' : Image Path , 'url' : Image Url } import GoogleImageScraper
urls = GoogleImageScraper . urls ( query , limit , arguments )Cette fonction renvoie simplement une liste des URL d'image à partir des termes de recherche.
Cette fonction est un peu plus de niche, mais elle peut être utile à certaines personnes. Au lieu de renvoyer une liste d'URL d'image comme avec la fonction URL , il renvoie une liste d'objets d'image contenant des données utiles, structurées comme tel:
{ 'url' : Image url , 'thumbnail' : Url of image thumbnail , 'source_url' : The webpage the image was found on , 'source' : The base url of the source }L'utilisation est similaire aux fonctions précédentes:
import GoogleImageScraper
image_objects = GoogleImageScraper . image_objects ( query , limit , arguments )Utilisez cette fonction pour télécharger une image via URL. Cette fonction est différente du reste en ce qu'elle prend différents arguments d'entrée, fournis ci-dessous:
| Argument | Types | Description |
|---|---|---|
| URL | Str | L'URL pour télécharger l'image à partir de. *requis* |
| nom | Str | Le nom du fichier. N'incluez pas l'extension de fichier. *requis* |
| chemin | Str | Le chemin pour télécharger l'image vers. |
| téléchargement_format | Str | Le format pour télécharger l' image . |
| écraser | bool | S'il faut écraser les fichiers avec le même nom. Par défaut est True . Soulève FileExistsError si False et le fichier existe. |
Il y a une chance que vous n'atteignez pas le nombre d'images spécifiées dans l'argument limite . Cela se produit lorsqu'il y a une erreur de téléchargement d'une image, que ce soit dans un format d'image, ou les temps de demande, cela peut arriver. Lors du téléchargement d'une grande quantité d'images, cela peut ne pas être atteint de votre limite. L'article «Erreurs» dans le dictionnaire retourné à partir de téléchargements est votre façon de garder une trace de cela. Par exemple, si votre limite était de 100 et que 3 images ont lancé des erreurs, vous récupéreriez 97 images, et l'élément «Erreurs» serait 3. Maintenant, si votre limite était de 20, cependant, et 3 images ont jeté des erreurs, vous obtiendriez toujours 20 articles, et que les `` erreurs '' seraient 0 .
| Erreur | Description |
|---|---|
LimitError | Soulevé lorsque l'argument limite est supérieur à 100 ou non le type approprié. |
ArgumentError | Élevé lorsqu'une valeur non valide est donnée pour un argument |
QueryError | Surélevé s'il n'y a pas de requête ou que la requête n'est pas le type approprié |
UnpackError | Surélevé si aucune image n'est trouvée sur la page. |
DownloadError | Exclusif à la fonction téléchargée_image . Élevé si l'image n'a pas réussi à télécharger. |
Incluez-les comme tel:
from GoogleImageScraper . errors import < error >Quelques vrais exemples sont répertoriés ici:
import GoogleImageScraper
urls = GoogleImageScraper . urls ( query = 'cats' , limit = 10 , arguments = { 'color' : 'black' })Résultat:
[ 'https://www.rd.com/wp-content/uploads/2021/01/GettyImages-1175550351.jpg' ,
'https://www.history.com/.image/ar_4:3%2Cc_fill%2Ccs_srgb%2Cfl_progressive%2Cq_auto:good%2Cw_1200/MTg0NTEzNzgyNTMyNDE2OTk5/black-cat-gettyimages-901574784.jpg' ,
'https://www.thesprucepets.com/thmb/kF3_dQW_JT1ClMQDlISxq3BgeT4=/6843x5132/smart/filters:no_upscale()/facts-about-black-cats-554102-hero-7281a22d75584d448290c359780c2ead.jpg' ,
'https://i.guim.co.uk/img/media/c5e73ed8e8325d7e79babf8f1ebbd9adc0d95409/2_5_1754_1053/master/1754.jpg?width=465&quality=45&auto=format&fit=max&dpr=2&s=065f279099ded1062688e357b155dc29' ,
'https://cdn.cnn.com/cnnnext/dam/assets/141030105303-kiki-irpt.jpg' ,
'https://imagesvc.meredithcorp.io/v3/mm/image?url=https%3A%2F%2Fstatic.onecms.io%2Fwp-content%2Fuploads%2Fsites%2F34%2F2021%2F09%2F27%2Fblack-cat-kitchen-rug-getty-0921-2000.jpg' ,
'https://www.gannett-cdn.com/presto/2021/10/28/USAT/1bf79c6a-5d88-4e64-b398-c40418a79829-XXX_iStock_000017680551Large.jpg' ,
'https://cdn.sanity.io/images/0vv8moc6/dvm360/f28cc9b680aed62edd018ce47a5cbb96c4f78f3b-4860x3024.jpg' ,
'https://vbspca.com/wp-content/uploads/2019/10/Image-e1570199876255.jpeg' ,
'https://ichef.bbci.co.uk/news/976/cpsprodpb/AECE/production/_99805744_gettyimages-625757214.jpg' ] import GoogleImageScraper
images = GoogleImageScraper . download ( query = 'dogs' , limit = 1 , arguments = { 'color' : 'brown' , 'download_format' : 'png' })Résultat:
{ 'images' : [{ 'path' : '<path> \ images \ dogs-0.png' , 'url' : 'https://post.medicalnewstoday.com/wp-content/uploads/sites/3/2020/02/322868_1100-800x825.jpg' }], 'errors' : 0 } import GoogleImageScraper
objects = GoogleImageScraper . image_objects ( query = 'birds' , limit = 1 , arguments = { 'color' : 'yellow' })Résultats:
[{ 'thumbnail' : 'https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcQwDI5y3_n2rwFQLZKrBXs5VL_J38zlZVvdZAooD8F8d7lY8ZA9iLEb1-AoBBWpGftpdoc&usqp=CAU' , 'url' : 'https://www.sfvaudubon.org/wp-content/uploads/2020/03/YEWAcrop.jpg' , 'source_url' : 'https://www.sfvaudubon.org/sfv-backyard-bird-identification/' , 'source' : 'sfvaudubon.org' }, { 'thumbnail' : 'https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcR1k5IhGCAPgU468tyPrgkuY9WC3T83zRxzFrTOOUs0OL_kanPG8VPKXV3euijAlzW9AsE&usqp=CAU' , 'url' : 'https://ca.audubon.org/sites/default/files/styles/article_teaser/public/yellowwarbler_peter_latourrette.jpg?itok=PFRtxcGN' , 'source_url' : 'https://ca.audubon.org/birds-0' , 'source' : 'ca.audubon.org' }]