画像は 1n
分ごとに生成され、これらをそれぞれローカル ディレクトリに取得したいと考えています。次のコマンドを使用して png 画像を取得できませんでした。
wget -r -l1 --no-parent -A.png http://url.com/home/images/
サイトによってブロックされているため使用できません
wget http://url.com/home/images/filename.png
画像の名前は更新ごとに変わるためです。
ただし、画像はリンクされておりhttp://url.com/home/index.html
、そこからファイル名を取得できます。これを確実に行う方法は何ですか? 検索するパターンはわかっています。ディレクトリから呼び出される唯一の画像です/home/images/
。
答え1
2つの戦略:
index.html
grep
戦略
以下に png 参照が 1 つだけある場合にのみ機能しますindex.html
。
#!/bin/bash
wget http://url.com/home/images/index.html
LINK=$(cat index.html | grep -zPo 'href=.*.png"')
LINK=${LINK#href=\"}; LINK=${LINK%\"}
wget --no-parent "http://url.com/home/images/$LINK"
rm index.html
- リクエストヘッダーの変更によるブラウザエミュレーション