Recuperando as páginas da web usando WGE, CURL e Lynx

Recuperando as páginas da web usando WGE, CURL e Lynx

Se você é um profissional de TI que precisa baixar 2000 relatórios de bugs on -line em um arquivo de texto plano e analisá -los para ver quais precisam de atenção ou uma mãe que deseja baixar 20 receitas de um site de domínio público, você pode se beneficiar de saber o conhecimento do Ferramentas que ajudam você a baixar páginas da Web em um arquivo baseado em texto. Se você estiver interessado em aprender mais sobre como analisar as páginas que você baixar, pode dar uma olhada em nossa manipulação de big data para diversão e lucro Parte 1 Artigo.

Neste tutorial, você aprenderá:

  • Como recuperar/baixar páginas da web usando WGET, CURL e Lynx
  • Quais são as principais diferenças entre as ferramentas wget, cacho e lince
  • Exemplos mostrando como usar wget, cacho e lince
Recuperando as páginas da web usando WGE, CURL e Lynx

Requisitos de software e convenções usadas

Requisitos de software e convenções de linha de comando Linux
Categoria Requisitos, convenções ou versão de software usada
Sistema Independente da distribuição Linux
Programas Linha de comando Bash, sistema baseado em Linux
Outro Qualquer utilidade que não esteja incluída no shell bash por padrão pode ser instalada usando sudo apt-get install utility-name (ou yum install para sistemas baseados em redhat)
Convenções # - requer que o Linux -Commands seja executado com privilégios de raiz diretamente como usuário root ou por uso de sudo comando
$-exige que o Linux-Commands seja executado como um usuário não privilegiado regular

Antes de começarmos, instale os 3 utilitários usando o seguinte comando (no ubuntu ou hortelã) ou use yum install em vez de APT Instale Se você estiver usando uma distribuição Linux baseada em redhat.

$ sudo apt-get install wget surl lynx 


Uma vez feito, vamos começar!

Exemplo 1: wget

Usando wget Recuperar uma página é fácil e direta:

$ wget https: // linuxconfig.Org/Linux-Complex-Bash-One-Liner-Examples --2020-10-03 15: 30: 12-- https: // linuxconfig.Org/Linux-Complex-Bash-One-Liner-Exemplos resolvendo LinuxConfig.org (LinuxConfig.org)… 2606: 4700: 20 :: 681a: 20d, 2606: 4700: 20 :: 681a: 30d, 2606: 4700: 20 :: AC43: 4b67,… conectando -se a LinuxConfig.org (LinuxConfig.org) | 2606: 4700: 20 :: 681a: 20d |: 443… conectado. Solicitação HTTP enviada, Aguardando Resposta… 200 OK Comprimento: Não especificado [Texto/html] Salvando para: 'Linux-Complex-Bash-One-Liner-Examples' Linux-Complex-Bash-One-Liner-Exemples [] 51.98K --.-Kb/s em 0.005s 2020-10-03 15:30:12 (9.90 MB/S)-'Linux-Complex-Bash-One-Liner-Examples' salvo [53229] $ 

Aqui baixamos um artigo de LinuxConfig.org em um arquivo, que por padrão é nomeado o mesmo que o nome no URL.

Vamos verificar o conteúdo do arquivo

$ arquivo linux-complex-bash-one-liner-examples linux-compleplex-bash-one-liner-examples: documento html, texto ascii, com linhas muito longas, com CRLF, CR, LF Terminadores de linha $ Head -n5 Linux- Exemplos complexos-bash-one-liner      

Ótimo, arquivo (o utilitário de classificação de arquivos) reconhece o arquivo baixado como html e o cabeça confirma que as primeiras 5 linhas (-n5) Parece com o código HTML e são baseados em texto.

Exemplo 2: Curl

$ curl https: // linuxconfig.Org/Linux-Complex-Bash-One-Liner-Exemples> Linux-Complexo-Bash-Liner-Liner-Exemplos % % Total Recebeu % XFERD VELOCIDADE MÉDIA TEMPO TEMPO DO TEMPO DOMENCIAL DOLUGO DO DOGA DO DOMETRO TOTAL VELOCIDADE ESQUERDA 100 53045 0 53045 0 0 84601 0-:-:--:-:-:-:-84466 $ 

Desta vez usamos ondulação fazer o mesmo que em nosso primeiro exemplo. Por padrão, ondulação será produzido para o padrão out (stdout) e exiba a página HTML em seu terminal! Assim, em vez disso, redirecionamos (usando >) para o arquivo Linux-Complex-Bash-One-liner-Exemplos.

Nós confirmamos novamente o conteúdo:

$ arquivo linux-complex-bash-one-liner-examples linux-compleplex-bash-one-liner-examples: documento html, texto ascii, com linhas muito longas, com CRLF, CR, LF Terminadores de linha $ Head -n5 Linux- Exemplos complexos-bash-one-liner      


Ótimo, o mesmo resultado!

Um desafio, quando queremos processar isso/esses arquivos, é que o formato é baseado em HTML. Poderíamos analisar a saída usando sed ou Awk e alguma expressão regular semi-complexa, para reduzir a saída para apenas o texto, mas isso é um pouco complexo e muitas vezes não é suficientemente à prova de erros. Em vez disso, vamos usar uma ferramenta que foi ativada/programada para despejar páginas no formato de texto.

Exemplo 3: Lynx

Lynx é outra ferramenta que podemos usar para recuperar a mesma página. No entanto, ao contrário wget e ondulação, lince é para ser um navegador completo (baseado em texto). Assim, se sairmos de lince, A saída será texto, e não HTML, baseado. Podemos usar o Lynx -Dump comando para produzir a página da web sendo acessada, em vez de iniciar um navegador totalmente interativo (baseado em teste) em seu cliente Linux.

$ lynx -dump https: // linuxconfig.Org/Linux-Complex-Bash-One-Liner-Exemples> Linux-Complex-Bash-One-Liner-Exemplos $ 

Vamos examinar o conteúdo do arquivo criado mais uma vez:

$ FILE Linux-Complex-Bash-one-liner-Exemplos Linux-Complex-Bash-One-Liner-Exemplos: UTF-8 UNICODE Texto $ Head -n5 Linux-Complex-Bash-One-Liner-Exemplos * [1] Ubuntu + o [2] Voltar o [3] Ubuntu 20.04 O [4] Ubuntu 18.04 

Como você pode ver, desta vez temos um UTF-8 Unicode arquivo baseado em texto, diferentemente do anterior wget e ondulação exemplos e o cabeça O comando confirma que as 5 primeiras linhas são baseadas em texto (com referências aos URLs na forma de [nr] marcadores). Podemos ver os URLs no final do arquivo:

$ cauda -n86 linux-complex-bash-one liner-examples | Cabeça -n3 Links visíveis 1. https: // linuxconfig.org/ubuntu 2. https: // linuxconfig.Org/Linux-Complex-Bash-One-Liner-Exemplos 

A recuperação de páginas dessa maneira nos fornece um grande benefício de ter arquivos baseados em texto sem HTML que podemos usar para processar ainda mais, se for necessário.

Conclusão

Neste artigo, tivemos uma breve introdução ao wget, ondulação e lince Ferramentas, e descobrimos como o último pode ser usado para recuperar páginas da web em um formato textual soltando todo o conteúdo HTML.

Por favor, sempre use o conhecimento adquirido aqui com responsabilidade: por favor, não sobrecarregue os servidores da web e apenas recupere o domínio público, sem copirrigos ou CC-0 etc. dados/páginas. Verifique também sempre se existe um banco de dados/conjunto de dados para download dos dados em que você está interessado, o que é muito preferido para recuperar individualmente as páginas da web.

Aproveite seu novo conhecimento encontrado e, mãe, ansioso pelo bolo para o qual você baixou a receita usando Lynx - -dump! Se você mergulhar em alguma das ferramentas, deixe -nos um comentário com suas descobertas.

Tutoriais do Linux relacionados:

  • Manipulação de big data para diversão e lucro Parte 1
  • Manipulação de big data para diversão e lucro Parte 3
  • Manipulação de big data para diversão e lucro Parte 2
  • Coisas para instalar no Ubuntu 20.04
  • Download do arquivo wget no Linux
  • Uma introdução à automação, ferramentas e técnicas do Linux
  • Coisas para fazer depois de instalar o Ubuntu 20.04 fossa focal linux
  • Download de arquivos Curl no Linux
  • Coisas para instalar no Ubuntu 22.04
  • Mint 20: Melhor que o Ubuntu e o Microsoft Windows?