wget
pouze načte dokument. Pokud je dokument v HTML, to, co chcete, je výsledek analýzy dokumentu.
Můžete například použít lynx -dump -nolist
, pokud máte v okolí rysa.
lynx
je lehký, jednoduchý webový prohlížeč, který má -dump
funkce, která se používá k výstupu výsledku procesu analýzy. -nolist
vyhýbá se seznamu odkazů na konci, který se zobrazí, pokud stránka obsahuje nějaké hypertextové odkazy.
Jak zmínil @Thor, elinks
lze použít i pro toto, protože má také -dump
možnost (a má -no-references
vynechat seznam odkazů). Může být zvláště užitečné, pokud procházíte nějakým webem pomocí -sigh- frames (MTFBWY).
Také mějte na paměti, že pokud stránka není opravdu jen kód C se značkami HTML, budete muset zkontrolovat výsledek, abyste se ujistili, že tam není nic víc než kód C.
Pokud nemáte nainstalované tyto další nástroje, pouze wget a stránka nemá žádné formátování jen prostý text a odkazy, např. zdrojový kód nebo seznam souborů, můžete odstranit HTML pomocí sed takto:
wget -qO- http://address/of/page/you/want/to/view/ | sed -e 's/<[^>]*>//g'
To používá wget k výpisu zdroje stránky do STDOUT a sed k odstranění všech <> párů a čehokoli mezi nimi.
Poté můžete přesměrovat výstup příkazu sed do souboru, který chcete vytvořit, pomocí> :
wget -qO- http://.../ | sed -e 's/<[^>]*>//g' > downloaded_file.txt
Poznámka:Možná zjistíte, že má v souboru navíc mezery, které nechcete (např. řádky jsou odsazeny o několik sloupců)
Nejsnazší může být použít váš textový editor k uklidění souboru (nebo zdrojový formátovač, když stahujete zdrojový kód C).
Pokud potřebujete udělat stejnou jednoduchou věc na každém řádku souboru, můžete do příkazu sed zahrnout příkaz, který to udělá (zde odstraníte jednu úvodní mezeru):
wget -qO- http://.../ | sed -e 's/<[^>]*>//g;s/^ //g' > downloaded_stripped_file.txt
stačí přidat další nástroj. Preferuji w3m
, což je lynx
jako konzolový prohlížeč. Možná budete chtít zkontrolovat, co je již ve vašem systému k dispozici.
w3m -dump website.html