ページ内で画像の名前を変更します。

ページ内で画像の名前を変更します。

画像は1分ごとに作成され、n各画像をローカルディレクトリにインポートしたいと思います。 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
  • リクエストヘッダを変更してブラウザをエミュレートします。

これを行う方法の例は次のとおりです。ここここそしてここ

おすすめ記事