UiPathにはData Scraping(2クリックでWeb上のリスト情報を一括で取得する)のように
強力なデータ取得機能がありますが、取れるのはテキスト情報だけで画像は対象外です。
画像をダウンロードするには右クリック→名前をつけて画像を保存→保存ダイアログでOK、という
人間と同じ手順を実装してもいいのですが、ちょっと芸がない。
前回から引き続き、Flickrでもう少し遊んでみます。
画像をダイアログ開かずにダウンロードする
画像のURLさえわかればHTTP Requestアクティビティを使って直接ダウンロードできます。
Get Attributeで画像のURLを取得
というわけで、まずは画像のURLを取り出します。
IEであればF12(又は右クリック→「要素の検証」)でHTMLの構造をチェック。
".jpg"で探すと画像のURLが見つかりました。
content, property, metaタグで掴めそうです。
URL取り出しに使うのはGet Attributeアクティビティ。
content要素の値を取りたいので、Attributeには"content"を指定。
前回同様、Flickrの場合は自動で生成されるSelectorがアテにならないので、自分でSelector組みます。
これを実行すればcontent要素の値=画像のURLを取得できるので、後はダウンロードするだけです。
Http Requestでローカルフォルダにダウンロード
Http Requestアクティビティで、画像URLにGETかけてファイルをダウンロードします。
・EndPointには画像URL(この例では"URL"という変数に入れてます)
・MethodはGETのまま
・ResourcePathにはダウンロード先のファイルパス
※フォルダ省略した場合は自分のプロジェクトフォルダに落ちてきます。
で、実行。プロジェクトフォルダ内にダウンロードできました。
実際にはファイル名は固定でなくPath.GetFileName(URL)で元の名前を生かした方が良いですね。
今回はここまで。