使用 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

相關內容