web-dev-qa-db-ja.com

コマンドラインからページ内のすべてのURLを絶対にする

curlとコマンドラインを使用してHTMLページを処理するのが好きです。

相対URLは苦痛です。

すべての相対URLを絶対にする簡単なユーティリティはありますか?

理想的には、これは次のようになります

curlabsolute $URL | process
1
Att Righ

必要なのは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>
3
RomanPerekhrest