wget: 壊れたアウトバウンドリンクの識別

wget: 壊れたアウトバウンドリンクの識別

wget--spider壊れた内部リンクを直接識別するオプション:

wget --spider --recursive --level=0 mywebsite.com

壊れたアウトバウンドリンクを見つけるために拡張しようとしましたが-H(私が知っている限り)、外部ドメインで追加の再帰レベルを指定できないため、--level=0スパイダーがワールドワイドWeb全体で解放するしかありません。

私が考えることができる1つの回避策は、ウェブサイトsitemap.xml(利用可能な場合)を使用してドメインの完全なURLセットを取得し、それをフィードバックしてwgetクロールの深さを制限することです。

wget -O - https://mywebsite.com/sitemap.xml \
| hred -xcr [email protected] \
| wget -i - -H --spider --recursive --level 1

この設定では別々のツールを使用します。hredXMLからURLを抽出します。

壊れた外部リンクを見つけるより効率的な方法はありますかwget?サイトマップを使用してデフォルトで機能するようにするか、理想的にはXMLの存在に依存しないようにします。

ベストアンサー1

直接読書に関してはsitemap.xmlこれが新機能のようですwget2:

  • ローカルサイトマップXMLファイルでのURL検索のサポート(--force-sitemap -i <filename>

wgetサイトマップなしでWebサイトのすべてのURLの単純なリストを生成するには、Webサイトをクロールし、grepなどのツールを使用してwget出力からURLを抽出できます。

wget --spider -r mywebsite.com 2>&1 \
| rg '^--.+-- (.+)$' --replace '$1' \
| sort -u

Wgetは仕事に最適なツールではありませんが、うまくいきます。

おすすめ記事