Como Usar Wget para Baixar Websites para Seu PC

Recurso Url do Wget do Linux

Já se perguntou se havia uma maneira de baixar um site sem um navegador? Você está com sorte. Com o poder da linha de comando do Linux, tudo é possível. Existem vários métodos para completar essa tarefa, mas estamos focando no wget neste artigo.

O Que É wget?

wget é uma utilidade de linha de comando GNU para recuperar conteúdo de servidores web. Como um downloader, wget é muito poderoso por si só. wget é capaz de trabalhar com múltiplos protocolos, como HTTP, HTTPS e FTP. Outras capacidades da utilidade wget incluem:

  • capacidade de rodar silenciosamente ou em segundo plano
  • integrado com scripts do Linux ou tarefas CRON
  • pode executar múltiplos downloads ao mesmo tempo
  • baixa arquivos que requerem uma senha

Por Que wget?

Embora haja uma infinidade de ferramentas que podem realizar atividades em websites, wget permite um escopo amplo. Ele dá ao usuário a capacidade de funcionar sem um navegador web ao:

  • baixar uma cópia completa de um site
  • baixar um arquivo específico de um site
  • automatizar a recuperação de um arquivo sob demanda
  • obter um documento de um portal de autenticação

wget também está embutido na maioria das distribuições Linux, então está disponível desde o início, e nenhuma instalação adicional é necessária.

Fundamentos do wget

Começar com wget é bastante simples. Primeiro, abra um Terminal Linux.

Uma vez que uma janela de terminal esteja aberta, você pode executar wget como mostrado abaixo:

wget URL

Substitua “URL” pela URL exata do website.

Para retomar um arquivo parcialmente baixado, use um switch -c no seu comando da seguinte forma:

wget -c URL

Para tornar seu download com wget silencioso, adicione o switch -q ao seu comando inicial do wget:

wget -q URL

Se você não tiver certeza do uso correto das opções dentro do wget, use o seguinte:

wget --help

Além de websites, você também pode baixar um arquivo usando wget. Por exemplo:

wget https://example.com/file.zip

Ele simplesmente pegará o arquivo e o salvará no diretório atual.

Se você quiser salvar com um nome de arquivo diferente ou em um local diferente, use a flag -O.

wget https://example.com/file.zip -O ~/Documents/meu_arquivo_baixado.zip

Opções FTP

Como mencionado anteriormente, wget também suporta FTP. Se você apenas especificar um site FTP:

wget ftp://ftp.example.com

wget assumirá que você deseja um login anônimo. Alternativamente, você pode especificar manualmente coisas como nome de usuário e senha com as seguintes flags:

  • --ftp-user=USER: especifica o nome de usuário para login
  • --ftp-password=PASS: especifica a senha
  • --no-passive-ftp: desabilita o modo de transferência passiva

Timeouts, Retentativas e Downloads Falhados

Finalmente, wget vem com várias opções relacionadas a problemas de conexão com o servidor e timeouts. Nem todas as falhas podem ser resolvidas, é claro, mas as seguintes flags são todas destinadas a ajudar a lidar com problemas de servidor:

  • --tries=NUMBER: especifica o número de vezes para tentar o download
  • --retry-connrefused: tenta o download mesmo se a conexão for recusada pelo servidor
  • --timeout=SECONDS: configuração global – quanto tempo esperar antes dos timeouts
  • --wait=SECONDS: quanto tempo esperar entre downloads bem-sucedidos (se repetindo)

Quem Usaria wget?

Ao ler este post, você pode estar pensando: “Isso parece complicado e muito mais difícil do que usar um navegador web”, mas qualquer um pode encontrar uma utilidade para essa ferramenta, seja como administrador de sistemas ou programador. Abaixo estão dois exemplos de como eu uso esse comando ao longo do meu dia, com meu papel às vezes mudando.

Facilita meu trabalho como pesquisador de segurança porque posso agendar esse comando para baixar múltiplos websites ao mesmo tempo. Posso fazer isso criando um arquivo de texto (usando qualquer editor de texto) que contém uma série de URLs em uma lista (uma URL por linha). Ao executar o comando abaixo com o switch -i, wget baixará cada website na lista.

wget -i nome_do_arquivo_de_download URL

Como administrador de sistemas, posso obter documentos de locais protegidos por senha com facilidade. Isso pode não ajudar você offline, mas ao executar wget, permite que você adicione credenciais a um site.

wget --user=user_id --password=user_password URL

Aí está! Foi tão difícil quanto você pensou? Ser capaz de automatizar suas ações com wget economizará seu tempo e lhe dará a capacidade de também trabalhar offline. O que você tem a perder?

Deixe um comentário abaixo e nos diga se você achou isso útil.