Wget を使用してサイトから特定の名前のファイルをダウンロードする

Wget を使用してサイトから特定の名前のファイルをダウンロードする

特定の数字と文字の組み合わせの出現について、(準)トップレベルドメインとそのすべてのサブフォルダーを調べる最適な方法は何でしょうか。

大量の画像リストを含むフォルダーが複数あり、特定の数字が出現する画像のみを取得する必要があります。例: 282 または 191

高解像度の写真と一緒にサムネイルをダウンロードしないように、最小サイズをフィルタリングする方法を教えていただければ、ボーナスポイントがもらえます。

答え1

これは、gif、png、jpg、jpeg を探してサイトをクロールし、その結果から文字列を grep します。結果のリストは、wget によって指定されたディレクトリに取得されます。'/path/to/save/files' と、ファイルを取得する URL を調整する必要があります。

最後の grep ステートメントを調整して、検索パラメータを定義します。次のようになります。

grep "191\|282" --instead of-- grep "taco.gif\|whatever"

注: ファイル タイプを追加または削除する場合は、それに応じて -A フラグ パラメーターと最後の grep の両方を変更します。

wget -P /path/to/save/files/ $(wget --spider --execute robots=off \
--user-agent="Mozilla/5.0 Firefox4.0.1" --no-clobber --random-wait --force-html \
--recursive --no-directories -A gif,png,jpg,jpeg http://taco.com 2>&1 | grep -e \
'http\|Length\|broken link' | awk -F' ' '{ print $3 }' | sed '$!N;s/\n/ /' | grep \
'.gif\|.png\|.jpg\|.jpeg' | tr -d '()' | sed '/does$/d' | sort -k2 | \
grep "taco.gif\|whatever")

注: ほとんどの管理者が wget をブロックし、クローラーをブロックするスクリプトを持っているため、これは多くのサイトでは機能しませんが、taco.com では正常に機能します。

試していませんが、このバッチ ダウンローダー プラグインの方がうまくいくかもしれません。 https://chrome.google.com/webstore/detail/fatkun-batch-download-ima/nnjjahlikiabnchcpehcpkdeckfgnohf?hl=en

関連情報