wget - Comando para baixar imagens sequenciais de uma página

Publicado por Xerxes em 09/09/2013

[ Hits: 28.049 ]

 


wget - Comando para baixar imagens sequenciais de uma página



Por qualquer motivo, talvez você queira baixar TODAS as imagens sequenciais de uma página. Esta dica ensina como.

Primeiramente, você precisa fuçar o código fonte da página para encontrar o caminho das imagens.

No Firefox, basta ir em: Ferramentas → Desenvolvedor Web → Código-fonte

Como exemplo, usarei a seguinte página:
É uma página sobre um jogo bem legal de cartas. As cartas são bonitas.

Após abrir o código fonte da página, eu procuro por ".jpg" ou ".png", ou algo assim.
Linux: Comando para baixar imagens sequenciais de uma página

Isso vai variar de página para página. Neste exemplo, encontrei o caminho para TODAS as imagens no diretório "/cards/" e vi que as cartas estão divididas em dois tipos:
  • As que começam com: "ex"
  • E as que começam com: "se"

Seguidos de um número correspondente à carta. Exemplo:
Olhando na página, podemos notar que as cartas que começam com "se" são numeradas de 001 até 200, e as cartas que começam com "ex", estão numeradas de 001 até 150.

Sendo assim, você pode baixar a primeira lista de imagens com o comando:

wget http://shadowera.com/cards/se{001..200}.jpg

E a segunda lista, com o comando:

wget http://shadowera.com/cards/ex{001..150}.jpg

O wget, sozinho, fará o laço necessário para puxar as imagens sequenciais.

Por fim, você terá todas as imagens.
Linux: Comando para baixar imagens sequenciais de uma página

Abraço!

Outras dicas deste autor

Indentar XML automaticamente

Como Desabilitar os Controles de Mídia na Tela de Bloqueio do KDE Plasma

Problema com MergeList [Resolvido]

Popcorn Time no LMDE (Debian) sem PPA

A pera barrou o elementary OS?

Leitura recomendada

Encontrando binários e arquivos de configuração

ZIP no GNU/Linux

Consultando qual o repositório está ativo no slackpkg usando apenas o grep

Montando dispositivos

Ajustando horário no Slackware

  

Comentários
[1] Comentário enviado por vanderlei_andre em 05/10/2013 - 23:04h

Cara muito bom ! era o que eu tava a muito tempo procurando ! mas será que você pode me dar uma ajuda aqui ? é o seguinte vou no site http://centraldemangas.com.br/online/naruto/001#1">http://centraldemangas.com.br/online/naruto/001#1 onde 001 é o capitulo do mangá e 1 é a pagina, gostaria de usar esse comando pra baixar as paginas desse capitulo da pagina 1 a 53 usei o seguinte comando:
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
ubunto01@ubunto01:~$ wget http://mangas.centraldemangas.com.br/naruto/naruto001-{1..53}.jpg
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
porém ele não baixa as imagens mas o html da pagina, no terminal aparece assim:
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Conectando-se a mangas.centraldemangas.com.br|199.189.86.12|:80... conectado.
A requisição HTTP foi enviada, aguardando resposta... 302 Moved Temporarily
Localização: http://centraldemangas.com.br [redirecionando]
--2013-10-05 22:52:15-- http://centraldemangas.com.br/
Conectando-se a centraldemangas.com.br|69.64.48.227|:80... conectado.
A requisição HTTP foi enviada, aguardando resposta... 200 OK
Tamanho: não especificada [text/html]
Salvando em: “naruto001-3.jpg”
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
se puder dar uma força eu agradeço !


[2] Comentário enviado por xerxeslins em 06/10/2013 - 00:40h

Olá amigo,

nesse caso o site redireciona a página.

Mas você pode baixar as imagens usando seguinte comando:

wget --referer=http://www.centraldemangas.com.br/index.php http://mangas.centraldemangas.com.br/naruto/naruto001-{01..53}.jpg

Bastou perceber que era redirecionado para a página inicial. A forma de resolver é usando o "--referer"

Referência: http://stackoverflow.com/questions/11389933/how-to-fix-wget-download-file-name-when-the-url-is-redir...

[3] Comentário enviado por vanderlei_andre em 09/10/2013 - 08:05h

Muito obrigado Xerxes Lins você não imagina quanto tempo eu tava procurando uma solução assim. usei o comando que você mostrou acima:
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
wget --referer=http://www.centraldemangas.com.br/index.php http://mangas.centraldemangas.com.br/naruto/naruto001-{01..53}.jpg
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
porém ele baixava outra imagem que dizia que havia ocorrido um erro 404 e bla bla bla, dai foi só acrescentar robots=off que ele baixou as imagens que eu queria, o comando ficou assim:
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
ubunto01@ubunto01:~$ wget --referer =http://www.centraldemangas.com.br/index.php http://mangas.centraldemangas.com.br/naruto/naruto001-{01..53}.jpg robots=off
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Mais uma vez obrigado amigo.

[4] Comentário enviado por xerxeslins em 09/10/2013 - 08:13h

Blz! Valeu!

[5] Comentário enviado por edgarsj em 15/07/2024 - 12:09h


Olá,

Não tenho muita experiência com o wget e estou precisando de uma ajuda!

Como posso baixar as imagens de um site com a seguinte estrutura: https://exemplo.com.br/public/files/2024/07/15/exemplo.jpg

Como se pode notar a cada dia é criado uma pasta. Preciso pegar especificamente o arquivo 'exemplo.jpg' desde o ano de 2016, ou todos os 'exemplo.jpg' dentro das subpastas da pasta 'files/'.

Desde já agradeço!!


[6] Comentário enviado por xerxeslins em 15/07/2024 - 13:40h


[5] Comentário enviado por edgarsj em 15/07/2024 - 12:09h


Olá,

Não tenho muita experiência com o wget e estou precisando de uma ajuda!

Como posso baixar as imagens de um site com a seguinte estrutura: https://exemplo.com.br/public/files/2024/07/15/exemplo.jpg

Como se pode notar a cada dia é criado uma pasta. Preciso pegar especificamente o arquivo 'exemplo.jpg' desde o ano de 2016, ou todos os 'exemplo.jpg' dentro das subpastas da pasta 'files/'.

Desde já agradeço!!




Um único comando para baixar uma imagem seria assim:

$ wget https://exemplo.com.br/public/files/ANO/MES/DIA/exemplo.jpg

Mas como é necessário repetir o processo para cara dia, dentro de cada mês, dentro de cada ano, o script precisa de uma condição de repetição. Uma possibilidade é usar o FOR.

Colocarei aqui um exemplo, mas não sei se funciona, pois não tenho acesso ao endereço real.

Crie um arquivo e coloque o conteúdo:

#!/bin/bash

# Loop pelos anos de 2016 a 2024
for ano in {2016..2024}; do
# Loop pelos meses de 01 a 12
for mes in {01..12}; do
# Loop pelos dias de 01 a 31
for dia in {01..31}; do
# Monta a URL completa para o arquivo exemplo.jpg
url="https://exemplo.com.br/public/files/$ano/$mes/$dia/exemplo.jpg"

# Utiliza wget para baixar o arquivo
wget "$url"

# Aguarda 1 segundo entre cada download para não sobrecarregar o servidor
sleep 1
done
done
done

Obs.: na linha da URL substitua pela URL real, mas deixe as variáveis $ano, $mes e $dia.

Salve com um nome qualquer como "baixador.sh" e dê permissão de execução:

$ chmod +x baixador.sh

Execute:

./baixador.sh

Espero que funcione. Se não funcionar, pelo menos servirá de base para você adaptar, melhorar e corrigir.

Pode colar o script no GEMINI e pedir para ele melhorar ou corrigir, explicando o que você quer.



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts