O que saber
- Para baixar um site completo, use o seguinte comando com o endereço da web do site: wget -r [site address]
- Para executar o wget como um comando em segundo plano, use: wget -b [site address]
Características do comando wget
Você pode baixar sites inteiros usando wget e converta os links para apontar para fontes locais para que você possa visualizar um site offline. O utilitário wget também tenta um download novamente quando a conexão cai e continua de onde parou, se possível quando a conexão retornar. Outras características do wget são as seguintes:
- Baixe arquivos usando HTTP, HTTPS e FTP.
- Retomar downloads.
- Converta links absolutos em páginas da web baixadas em URLs relativos para que os sites possam ser visualizados offline.
- Suporta proxies HTTP e cookies.
- Suporta conexões HTTP persistentes.
- Ele pode ser executado em segundo plano, mesmo quando você não está conectado.
- Funciona em Linux e Windows.
Como baixar um site usando wget
O utilitário wget baixa páginas da web, arquivos e imagens da web usando a linha de comando do Linux. Você pode usar um único comando wget para baixar de um site ou configurar um arquivo de entrada para baixar vários arquivos em vários sites. De acordo com a página do manual, o wget pode ser usado mesmo quando o usuário estiver desconectado do sistema. Para fazer isso, use o comando nohup. Para este guia, você aprenderá como baixar este blog Linux: wget www.everydaylinuxuser.com
type = “code”> Antes de começar, crie uma pasta em sua máquina usando o comando mkdir e, em seguida, mova para a pasta usando o comando cd. Por exemplo: mkdir dailylinuxuser
cd dailylinuxuser
wget www.everydaylinuxuser.com
type = “code”> O resultado é um único arquivo index.html que contém o conteúdo obtido do Google. As imagens e folhas de estilo são mantidas no Google.
Para baixar o site completo e todas as páginas, use o seguinte comando: wget -r www.everydaylinuxuser.com
type = “code”> Isso baixa as páginas recursivamente até um máximo de 5 níveis de profundidade. Cinco níveis de profundidade podem não ser suficientes para obter tudo do site. Use o -eu mude para definir o número de níveis que deseja ir, como segue: wget -r -l10 www.everydaylinuxuser.com
type = “code”> Se você deseja recursão infinita, use o seguinte: wget -r -l inf www.everydaylinuxuser.com
type = “code”> Você também pode substituir o inf com 0, o que significa a mesma coisa. Existe mais um problema. Você pode obter todas as páginas localmente, mas os links nas páginas apontam para o local original. Não é possível clicar localmente entre os links nas páginas.
Para contornar este problema, use o -k mude para converter os links nas páginas para apontar para o equivalente baixado localmente, como segue: wget -r -k www.everydaylinuxuser.com
type = “code”> Se você deseja obter um espelho completo de um site, use a seguinte opção, que elimina a necessidade de usar o -r, -k, e -eu comuta. wget -m www.everydaylinuxuser.com
type = “code”> Se você tem um site, pode fazer um backup completo usando este comando simples.
Execute o wget como um comando de fundo
Você pode fazer com que o wget seja executado como um comando em segundo plano, permitindo que você continue seu trabalho na janela do terminal enquanto os arquivos são baixados. Use o seguinte comando: wget -b www.everydaylinuxuser.com
type = “código”>
Você pode combinar interruptores. Para executar o comando wget em segundo plano enquanto espelha o site, use o seguinte comando: wget -b -m www.everydaylinuxuser.com
type = “code”> Você pode simplificar ainda mais, da seguinte maneira: wget -bm www.everydaylinuxuser.com
type = “código”>
Exploração madeireira
Se você executar o comando wget em segundo plano, não verá nenhuma das mensagens normais que ele envia para a tela. Para enviar essas mensagens a um arquivo de log para que você possa verificar o andamento a qualquer momento, use o comando tail. Para enviar informações do comando wget para um arquivo de log, use o seguinte comando: wget -o / path / to / mylogfile www.everydaylinuxuser.com
type = “code”> O reverso é não exigir nenhum registro e nenhuma saída para a tela. Para omitir todas as saídas, use o seguinte comando: wget -q www.everydaylinuxuser.com
type = “código”>
Baixar de vários sites
Você pode configurar um arquivo de entrada para baixar de vários sites diferentes. Abra um arquivo usando seu editor favorito ou o comando cat e liste os sites ou links para baixar em cada linha do arquivo. Salve o arquivo e execute o seguinte comando wget: wget -i / path / to / inputfile
type = “code”> Além de fazer backup do seu site ou encontrar algo para baixar para ler offline, é improvável que você queira baixar um site inteiro. É mais provável que você baixe um único URL com imagens ou baixe arquivos como arquivos zip, arquivos ISO ou arquivos de imagem. Com isso em mente, você não precisa digitar o seguinte no arquivo de entrada, pois é demorado:
- http://www.myfileserver.com/file1.zip
- http://www.myfileserver.com/file2.zip
- http://www.myfileserver.com/file3.zip
Se você souber que o URL base é o mesmo, especifique o seguinte no arquivo de entrada:
- file1.zip
- arquivo2.zip
- file3.zip
Em seguida, você pode fornecer a URL base como parte do comando wget, da seguinte maneira: wget -B http://www.myfileserver.com -i / path / to / inputfile
type = “código”>
Opções de repetição
Se você configurar uma fila de arquivos para baixar em um arquivo de entrada e deixar o computador executando para baixar os arquivos, o arquivo de entrada pode travar enquanto você estiver ausente e tentar baixar o conteúdo novamente. Você pode especificar o número de tentativas usando a seguinte opção: wget -t 10 -i / path / to / inputfile
type = “code”> Use o comando acima em conjunto com o -T alterne para especificar um tempo limite em segundos, da seguinte maneira: wget -t 10 -T 10 -i / path / to / inputfile
type = “code”> O comando acima tentará novamente 10 vezes e se conectará por 10 segundos para cada link de arquivo. Também é inconveniente quando você baixa 75% de um arquivo de 4 gigabytes em uma conexão de banda larga lenta, apenas para a conexão cair. Para usar o wget para tentar novamente de onde parou o download, use o seguinte comando: wget -c www.myfileserver.com/file1.zip
type = “code”> Se você martelar um servidor, o host pode não gostar e pode bloquear ou eliminar seus pedidos. Você pode especificar um período de espera para especificar quanto tempo esperar entre cada recuperação, da seguinte maneira: wget -w 60 -i / path / to / inputfile
type = “code”> O comando acima espera 60 segundos entre cada download. Isso é útil se você baixar muitos arquivos de uma única fonte. Alguns hosts da web podem detectar a frequência e bloquear você. Você pode tornar o período de espera aleatório para parecer que você não está usando um programa, da seguinte maneira: wget –random-wait -i / path / to / inputfile
type = “código”>
Proteja os limites de download
Muitos provedores de serviços de Internet aplicam limites de download para uso de banda larga, especialmente para aqueles que vivem fora de uma cidade. Você pode adicionar uma cota para não ultrapassar o limite de download. Você pode fazer isso da seguinte maneira: wget -q 100m -i / path / to / inputfile
type = “code”> O -q comando não funcionará com um único arquivo. Se você baixar um arquivo com 2 gigabytes de tamanho, usando -q 1000m não interrompe o download do arquivo. A cota é aplicada apenas ao baixar recursivamente de um site ou ao usar um arquivo de entrada.
Passe pela segurança
Alguns sites exigem que você faça login para acessar o conteúdo que deseja baixar. Use as seguintes opções para especificar o nome de usuário e a senha. wget –user = yourusername –password = yourpassword
type = “code”> Em um sistema multiusuário, quando alguém executa o ps comando, eles podem ver seu nome de usuário e senha.
Outras opções de download
Por padrão, o -r switch baixa recursivamente o conteúdo e cria diretórios conforme ele avança. Para obter todos os arquivos para baixar em uma única pasta, use a seguinte opção: wget -nd -r
type = “code”> O oposto disso é forçar a criação de diretórios, o que pode ser feito usando o seguinte comando: wget -x -r
type = “código”>
Como fazer download de certos tipos de arquivo
Se você deseja fazer download recursivamente de um site, mas deseja apenas fazer download de um tipo de arquivo específico, como um MP3 ou uma imagem como um PNG, use a seguinte sintaxe: wget -A “* .mp3” -r
type = “code”> O reverso disso é ignorar certos arquivos. Talvez você não queira baixar executáveis. Nesse caso, use a seguinte sintaxe: wget -R “* .exe” -r
type = “código”>
Cliget
Existe um complemento do Firefox chamado cliget. Para adicionar isso ao Firefox:
-
Visite https://addons.mozilla.org/en-US/firefox/addon/cliget/ e clique no adicionar ao Firefox botão.
-
Clique no instalar quando ele aparecer e reinicie o Firefox.
-
Para usar o cliget, visite uma página ou arquivo que deseja baixar e clique com o botão direito. Um menu de contexto aparece chamado cliget, e há opções para copiar para wget e copiar para curl.
-
Clique no copiar para wget opção, abra uma janela de terminal, clique com o botão direito e escolha colar. O comando wget apropriado é colado na janela.
Isso evita que você tenha que digitar o comando sozinho.
Resumo
O comando wget possui várias opções e opções. Para ler a página de manual do wget, digite o seguinte em uma janela de terminal: man wget
class = “ql-syntax”>