WGet Like Utility para baixar todas as imagens no diretório MySite.com/img/ -- and-line campo com bash campo com wget camp askubuntu Relacionado O problema

Wget like utility to download all images in mysite.com/img/ directory


4
vote

problema

português

Meu acesso ao diretório MySite.com/img/ está bloqueado.

No entanto todas as imagens nesse diretório estão no formulário n.jpg onde n é a imagem nth.

Meu acesso a mysite.com/img/n.jpg não está bloqueado

Está lá de qualquer maneira eu salvar imagens 1-500 ( mysite.com/img/1.jpg para mysite.com/img/500.jpg )?

Estou usando o Ubuntu 11.10

english

My access to the mysite.com/img/ directory is blocked.

However all the images in that directory are in the form n.jpg where n is the nth image.

My access to mysite.com/img/n.jpg is not blocked

Is there anyway I save images 1-500 (mysite.com/img/1.jpg to mysite.com/img/500.jpg)?

I'm using ubuntu 11.10

        

Lista de respostas

6
 
vote
vote
Melhor resposta
 

A solução mais fácil é provavelmente usar expansões de brace de brasão

  wget http://mysite.com/img/{1..500}.jpg    

Há também a opção de fazer um loop, permitindo que você coloque um pouco de espera entre cada solicitações.

  for n in $(seq 1 500); do   wget http://mysite.com/img/${n}.jpg   sleep 0.1 done    

(O acima pode ser corrido diretamente no shell.)

 

The easiest solution is probably to use bash brace expansions

wget http://mysite.com/img/{1..500}.jpg 

There is also the option of doing a loop, allowing you to put a bit of wait between each requests.

for n in $(seq 1 500); do   wget http://mysite.com/img/${n}.jpg   sleep 0.1 done 

(The above can be ran directly in the shell.)

 
 
     
     
1
 
vote

Há também outra maneira de fazer isso com wget que usei com sucesso para um site, e você deve ser capaz de modificar as instruções abaixo para outros sites. Envolve gerar uma lista de URLs e, em seguida, alimentando essa lista para wget .

1) Como um exemplo permite dizer que você deseja baixar todas as 63 revistas de PDF de revista completa (uma revista Ubuntu ), mas seu gerenciador de download não pode baixá-los de uma só vez. Então encontre o link do primeiro arquivo PDF e verifique rapidamente se os outros links da revista estão no mesmo formato de URL.

2) Com o conhecimento adquirido na Parte 1, podemos agora recorrer ao nosso script para gerar os URLs. O script abaixo executa um loop até que eu modifiquei (crédito ao seu originador). Você modifica esse script colocando o número de revistas no ABCDEFGHIJKLMNABCDEFGHIJKLMABCDEFGHIJKLMN5 e coloque o URL correto após echo e verifique se o ABCDEFGHIJKLMNABCDEFGHIJKLMN7 está no Corrigir parte do URL a ser ecoado para que ele mude a cada execução do loop. Os URLs são gerados e, em seguida, anexados a um arquivo de texto - isso acontece em uma split segundo quando o script é executado e não é tão complicado para configurar como soa!

Salve o script em um editor de texto, torne-o executável e execute-o; modificá-lo como descrito acima quando você deseja baixar a partir de um site do que o meu exemplo.

  #!/bin/bash    i=0    until [ $i = 63 ] ; do     i=$(($i+1))     echo "http://dl.fullcirclemagazine.org/issue"$i"_en.pdf" >> url.txt done     

3) Finalmente, supondo que url.txt esteja no diretório de trabalho atual, execute:

  wget http://mysite.com/img/{1..500}.jpg 0   

Se você quiser salvar os downloads em outro lugar adicionar wget http://mysite.com/img/{1..500}.jpg 1 após wget http://mysite.com/img/{1..500}.jpg 2

Não funciona - se você tentar, digite wget http://mysite.com/img/{1..500}.jpg 3 para abortar se você não quiser baixá-los todos!

 

There is also another way to do this with wget that I have used successfully for one site, and you should be able to modify the instructions below for other sites. It involves generating a list of urls and then feeding that list to wget.

1) As an example lets say you want to download all 63 pdf magazines of Full Circle Magazine (an Ubuntu magazine), but your download manager cannot download them all at once. So find the link of the first pdf file and quickly check that the other magazine links are in the same url format.

2) With the knowledge gained in part 1, we can now turn to our script to generate the urls. The script below runs an until loop, which I have modified (credit to its originator). You modify this script by placing the number of magazines in the until [ $i = 63 ] part and place the correct url after echo and make sure the "$i" is in the correct part of the url to be echoed so that it changes with every run of the loop. The urls are generated and then appended to a text file- this happens in a split second when the script is run and is not as complicated to set up as it sounds!

Save the script in a text editor, make it executable and run it; modify it as described above when you want to download from a different site than my example.

#!/bin/bash    i=0    until [ $i = 63 ] ; do     i=$(($i+1))     echo "http://dl.fullcirclemagazine.org/issue"$i"_en.pdf" >> url.txt done  

3) Finally, assuming that url.txt is in the current working directory, run:

wget -i url.txt   

If you want to save the downloads elsewhere add -P ~/MyDirectory after url.txt

It does work- if you try it, enter ctrl c to abort if you don't want to download them all!

 
 

Perguntas relacionadas

20  Como faço para reiniciar um download da WGet?  ( How do i restart a wget download ) 
Eu uso o aplicativo wget . Um arquivo parou de download. Como posso parar o download e iniciar o download novamente? Aqui está o log para wget $ tail ...

8  Como posso instalar o Java da linha de comando apenas? [fechado]  ( How can i install java from the command line only ) 
. Esta questão é improvável que ajude a futuros visitantes; Só é relevante para uma pequena área geográfica, um momento esp...

0  Nenhum arquivo de certificado dentro de / usr / lib / ssl  ( No certificate files inside of usr lib ssl ) 
Eu não pareço ter certs SSL instalados na minha máquina e está causando problemas com wget e faraday chamados dentro de trilhos. Quando eu executo openssl ...

4  Download 13.04 ISO com WGet  ( Download 13 04 iso with wget ) 
Eu estou tentando construir uma máquina virtual executando o Ubuntu 13.04 em um servidor em execução 12.04. Eu não tenho nenhuma gui. Como posso baixar o arqu...

150  Baixe arquivos de uma lista  ( Download files from a list ) 
Como posso baixar arquivos (listados em um arquivo de texto) usando wget ou alguma outra maneira automática? lista de arquivos de amostra: www.example....

5  Wget tem um atraso de 4 segundos  ( Wget has a 4 second delay ) 
Eu tentei wget uma página com o Windows / Mac, e a resposta é instantânea Enquanto o aplicativo Linux atrasa por 4 segundos antes de mostrar a resposta. O...

1  Como baixar código com interface estranha  ( How to download code with weird interface ) 
Aqui está um código para o eclipse arrastar e soltar http://www.vogella.de/code/ de.vogella.dnd.jface / codestArtPage.html Eu gostaria de baixá-lo, como...

27  Baixe um site inteiro com WGet (ou outro), incluindo todo o seu conteúdo para download  ( Download a whole website with wget or other including all its downloadable con ) 
Estou tentando baixar o site do Winamp no caso de desligá-lo. Eu preciso baixar literalmente tudo. Eu tentei uma vez com wget e eu consegui baixar o site ...

201  Como faço para fornecer um nome de usuário e senha para wget?  ( How do i provide a username and password to wget ) 
Eu tentei me conectar a um servidor via WGet: wget http://<user>:<pass>@serveradress Mas Wget responde: porta inválida Eu sei que o servidor aceita t...

0  Não é possível usar o comando wget de um usuário que eu criei  ( Cannot use wget command from a user i created ) 
fundo Eu peguei uma caixa de Ubuntu na AWS, e eu estava seguindo o Instruções Para instalar um servidor mais importante. As coisas estavam indo bem até ch...




© 2022 pergunte.org All Rights Reserved. Casa de perguntas e respostas todos os direitos reservados


Licensed under cc by-sa 3.0 with attribution required.