Se eu tentar o wget em uma página da web, recebo a página como html. É possível recuperar apenas o texto de um arquivo sem html associado? (Isso é necessário para mim, pois algumas das páginas HTML que contêm o programa c estão sendo baixadas com tags html. Tenho que abri-lo no navegador e copiar manualmente o texto para criar um arquivo .c.)
Responder1
wget
recuperará apenas o documento. Se o documento estiver em HTML, o que você deseja é o resultado da análise do documento.
Você poderia, por exemplo, usar lynx -dump -nolist
, se tiver lince por perto.
lynx
é um navegador leve e simples, que possui o -dump
recurso usado para gerar o resultado do processo de análise. -nolist
evita a lista de links no final, que aparecerá se a página contiver algum hiperlink.
Conforme mencionado pelo @Thor, elinks
pode ser usado para isso também, pois também possui uma -dump
opção (e deve -no-references
omitir a lista de links). Pode ser especialmente útil se você percorrer algum site usando -sigh-frames (MTFBWY).
Além disso, lembre-se de que, a menos que a página seja apenas código C com tags HTML, você precisará verificar o resultado, apenas para ter certeza de que não há nada além de código C ali.
Responder2
Se você não possui essas outras ferramentas instaladas, apenas o wget, e a página não possui formatação, apenas texto simples e links, por exemplo, código-fonte ou uma lista de arquivos, você pode remover o HTML usando sed assim:
wget -qO- http://address/of/page/you/want/to/view/ | sed -e 's/<[^>]*>//g'
Isso usa wget para despejar a origem da página em STDOUT e sed para remover quaisquer pares < > e qualquer coisa entre eles.
Você pode então redirecionar a saída do comando sed para o arquivo que deseja criar usando > :
wget -qO- http://.../ | sed -e 's/<[^>]*>//g' > downloaded_file.txt
NB: Você pode descobrir que há espaços em branco extras no arquivo que você não deseja (por exemplo, as linhas são recuadas em algumas colunas)
Pode ser mais fácil usar seu editor de texto para organizar o arquivo (ou um formatador de origem enquanto você baixa o código-fonte C).
Se você precisar fazer a mesma coisa simples em cada linha do arquivo, você pode incluir um comando para fazer isso no comando sed (retirando aqui um espaço à esquerda):
wget -qO- http://.../ | sed -e 's/<[^>]*>//g;s/^ //g' > downloaded_stripped_file.txt
Responder3
apenas para adicionar outra ferramenta. Eu prefiro o w3m
, que é um lynx
navegador de console semelhante. Você pode querer verificar o que já está disponível em seu sistema.
w3m -dump website.html