Esta é uma biblioteca para recuperar e baixar imagens do Google Images.
Ele usa uma consulta de entrada e argumentos para pesquisar e recuperar objetos de imagem. Essas imagens podem ser protegidas sob direitos autorais e você não deve fazer nada punível com elas, como usá -las para uso comercial. Esta biblioteca é inspirada no google-images-download pela Hardikvasa , mas adiciona algumas melhorias na qualidade de vida, como poder recuperar os URLs também. Essa biblioteca não seria possível, no entanto, sem o trabalho deles e as pessoas que estão trabalhando para continuar.
Há um argumento necessário e dois argumentos nas duas funções principais:
| Argumento | Tipos | Descrição |
|---|---|---|
| consulta: | str, lista | Uma sequência ou lista que contém as palavras -chave a serem pesquisadas. Se a consulta for uma string, ela será separada em diferentes palavras -chave por espaços. |
| limite | int | A quantidade de imagens a serem pesquisadas. Não pode ser maior que 100. *Padrões para 1 * |
| Argumentos: | dito | Este é um dicionário que contém muitos valores opcionais, os quais serão listados aqui. Eles são divididos em duas categorias: argumentos de pesquisa e download de argumentos |
| Argumento | Tipos | Descrição |
|---|---|---|
| download_format | str | Especifica uma extensão de arquivo para baixar todas as imagens como. Deve ser uma extensão de arquivo de imagem válida reconhecida pelo PIL . *Nota: Isso leva consideravelmente mais com grandes quantidades de imagens* |
| diretório | str | Isso especifica o nome do diretório para baixar as imagens. Isso será criado automaticamente no diretório em que a função é chamada, a menos que o diretório já exista ou o caminho seja especificado. |
| caminho | str | Isso especifica o caminho para criar o diretório de download. |
| tempo esgotado | int flutuar | Isso especifica o tempo máximo em que o programa aguardará para recuperar uma única imagem em segundos. |
| detalhado | bool | Defina como True para imprimir atualizações sobre o progresso no console. |
| Argumento | Valores aceitos | Descrição |
|---|---|---|
| cor | 'vermelho', 'laranja', 'amarelo', 'verde', 'teal', 'azul', 'roxo', 'rosa', 'branco', 'cinza', 'preto', 'marrom' | Filtrar imagens pela cor dominante. |
| color_type | 'completo', 'cinza', 'transparente' | Filtre imagens pelo tipo de cor, colorido, escala de cinza ou transparente. |
| licença | 'Creative_Commons', 'outros_licenses' | Filtrar imagens pela licença de uso. |
| tipo | 'rosto', 'foto', 'clipart', 'lineart', 'gif' | Filtros pelo tipo de imagens a serem pesquisadas. * Não deve ser confundido com Search_Format * |
| tempo | 'passado_day', 'pass_week', 'passado_month', 'passado_year' | Encontra apenas imagens publicadas no tempo especificado. |
| Aspect_ratio | 'altura', 'quadrado', 'largo', 'panorâmico' | Especifica a proporção das imagens. |
| Search_Format | 'jpg', 'gif', 'png', 'bmp', 'svg', 'webp', 'ico', 'cru' | Filtra imagens que não são um formato especificado. Se você deseja baixar imagens como um formato específico, use o argumento 'download_format'. |
Existem quatro funções disponíveis, download , URLs , image_objects e Download_image , que funcionam de maneira diferente dos outros:
import GoogleImageScraper
images = GoogleImageScraper ( query , limit , arguments )Isso baixará imagens com base nos argumentos. Os valores retornados seguirão este formato:
{ 'images' : [ images ], 'errors' : Number of Errors }Cada uma das imagens na lista de imagens também seguirá um formato específico:
{ 'path' : Image Path , 'url' : Image Url } import GoogleImageScraper
urls = GoogleImageScraper . urls ( query , limit , arguments )Essa função simplesmente retorna uma lista de URLs de imagem dos termos de pesquisa.
Essa função é um pouco mais de nicho, mas pode ser útil para algumas pessoas. Em vez de retornar uma lista de URLs de imagem como na função URLS , ele retorna uma lista de objetos de imagem que contêm dados úteis, estruturados como assim:
{ 'url' : Image url , 'thumbnail' : Url of image thumbnail , 'source_url' : The webpage the image was found on , 'source' : The base url of the source }O uso é semelhante às funções anteriores:
import GoogleImageScraper
image_objects = GoogleImageScraper . image_objects ( query , limit , arguments )Use esta função para baixar uma imagem via URL. Esta função é diferente do resto, pois leva diferentes argumentos de entrada, fornecidos abaixo:
| Argumento | Tipos | Descrição |
|---|---|---|
| url | str | O URL para baixar a imagem de. *obrigatório* |
| nome | str | O nome do arquivo. Não inclua extensão de arquivo. *obrigatório* |
| caminho | str | O caminho para baixar a imagem para. |
| download_format | str | O formato para baixar a imagem. Demora mais um tempo |
| substituir | bool | Se deve substituir os arquivos com o mesmo nome. Padrões para True . Aumenta FileExistsError se False e o arquivo existe. |
Há uma chance de você não atingir o número de imagens especificadas no argumento limite . Isso ocorre quando há um erro do download de uma imagem, seja em um formato de imagem ou no tempo de solicitação, pode acontecer. Ao baixar uma grande quantidade de imagens, isso pode fazer com que seu limite não seja alcançado. O item 'erros' no dicionário retornado dos downloads é a sua maneira de acompanhar isso. Por exemplo, se seu limite fosse 100 e 3 imagens lançaram erros, você receberá 97 imagens de volta e o item de 'erros' seria 3. Agora, se o seu limite fosse 20, no entanto, e 3 imagens lançaram erros, você ainda receberá 20 itens de volta e o item de queda .
| Erro | Descrição |
|---|---|
LimitError | Levantado quando o argumento limite está acima de 100 ou não o tipo adequado. |
ArgumentError | Levantado quando um valor inválido é dado para um argumento |
QueryError | Levantado se não houver consulta ou a consulta não for o tipo adequado |
UnpackError | Levantado se nenhuma imagem for encontrada na página. |
DownloadError | Exclusivo da função Download_image . Levantado se a imagem falhou em baixar. |
Inclua estes como assim:
from GoogleImageScraper . errors import < error >Alguns exemplos reais estão listados aqui:
import GoogleImageScraper
urls = GoogleImageScraper . urls ( query = 'cats' , limit = 10 , arguments = { 'color' : 'black' })Resultado:
[ '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' })Resultado:
{ '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' })Resultados:
[{ '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' }]