curl
とコマンドラインを使用してHTMLページを処理するのが好きです。
相対URLは苦痛です。
すべての相対URLを絶対にする簡単なユーティリティはありますか?
理想的には、これは次のようになります
curlabsolute $URL | process
必要なのはwget
utulity:
http://www.littlewebhut.com/articles/simple_web_page/
で指定された簡単なWebページをダウンロードする必要があるとしましょう。
コマンド(以下で使用されるurlは実際のものであり、コマンドは「そのまま」テストできます):
wget -O simple_page -k http://www.littlewebhut.com/articles/simple_web_page/
-O
(--output-document=file
)-ドキュメントは適切なファイルに書き込まれませんが、すべてが連結されてfile
に書き込まれます。
-k
(--convert-links
)-ダウンロードが完了したら、ドキュメント内のリンクを変換して、ローカルでの表示に適したものにします。
言及されたWebページからのコンテキストhtmlフラグメントをいくつか示します前ダウンロード(オンラインバージョン):
...
<ul>
<li><a href="/" class="color-menu">Home</a></li>
<li><a href="/html/" class="color-menu">HTML</a></li>
<li><a href="/css/" class="color-menu">CSS</a></li>
<li><a href="/javascript/" class="color-menu">JavaScript/jQuery</a></li>
<li><a href="/inkscape/" class="color-menu">Inkscape</a></li>
<li><a href="/gimp/" class="color-menu">GIMP</a></li>
<li><a href="/blender/" class="color-menu">Blender</a></li>
<li><a href="/articles/" class="color-menu">Articles</a></li>
<li><a href="/contact/" class="color-menu">Contact</a></li>
</ul>
同じフラグメント後ダウンロード、ファイルsimple_page
に保存:
...
<ul>
<li><a href="http://www.littlewebhut.com/" class="color-menu">Home</a></li>
<li><a href="http://www.littlewebhut.com/html/" class="color-menu">HTML</a></li>
<li><a href="http://www.littlewebhut.com/css/" class="color-menu">CSS</a></li>
<li><a href="http://www.littlewebhut.com/javascript/" class="color-menu">JavaScript/jQuery</a></li>
<li><a href="http://www.littlewebhut.com/inkscape/" class="color-menu">Inkscape</a></li>
<li><a href="http://www.littlewebhut.com/gimp/" class="color-menu">GIMP</a></li>
<li><a href="http://www.littlewebhut.com/blender/" class="color-menu">Blender</a></li>
<li><a href="http://www.littlewebhut.com/articles/" class="color-menu">Articles</a></li>
<li><a href="http://www.littlewebhut.com/contact/" class="color-menu">Contact</a></li>
</ul>