wgetがWebページからアイコンをダウンロードできないようです。

wgetがWebページからアイコンをダウンロードできないようです。

オフラインで見るためにウェブページをダウンロードしたいと思います。特に次のページをダウンロードしたいと思います。SEPのライフニッツアイテムだから、端末で次のコマンドを実行します

wget -p -np https://plato.stanford.edu/entries/leibniz/

Webページを表示するために必要な画像などをダウンロードする必要がありますが、親ディレクトリに昇格することはありません。

ただし、ダウンロードしたWebページを開くと、Webページの一部のアイコンがなくなります。具体的には、下の画像はダウンロードしたWebページに欠けているアイコンの一部を示しています。 (他のブラウザでも同じ結果が表示されます)

元のWebページの左上は次のとおりです。

元のWebページ

ダウンロードしたウェブページの左上は次のとおりです。

ダウンロードしたWebページ

欠落しているアイコンはすべて、次のプログラムから来たものであることがわかりました。「フォントが本当に素敵ですね」。 Webページをダウンロードすると、wget名前に「fontawesome」という文字列を含むファイルを含む「font」というサブディレクトリが提供されるため、wgetWebページが何らかの方法でこのフォントを使用することを認識します。

ダウンロードしたWebページにアイコンが表示されない理由を知っている人はいますか?

ベストアンサー1

問題は、wgetクエリ文字列全体でフォント名を保存することです。fontawesome-webfont.ttf?v=3.2.1

一方、ブラウザは?v=3.2.1要求時にクエリ文字列部分()を破棄し、要求のみを試みますfontawesome-webfont.ttf

私は正直なところ、「誰が責めるべきか」を知らない - wgetやブラウザ。

fontawesome-webfont.ttf?v=3.2.1ファイルリンクをfontawesome-webfont.ttf

これは新しい問題ではありません。これは他の人にも起こりましたhttps://gist.github.com/pigeonflight/f8d5d6efbadf8cb341d6a44d17de3d59(興味深い - 同じフォントです!)。

この問題に対する私の解決策は、オプションを使用してUnixファイルの命名パターンを回避することでした--restrict-file-names=windows。これにより、正しく機能する@ためにタグを使用するのではなく、wgetを他の多くの操作(マニュアルを参照)と一緒に使用します?

おすすめ記事