Help us understand the problem. What is going on with this article?

【UiPath】Web上の画像を簡単にダウンロードする

More than 1 year has passed since last update.

UiPathにはData Scraping(2クリックでWeb上のリスト情報を一括で取得する)のように
強力なデータ取得機能がありますが、取れるのはテキスト情報だけで画像は対象外です。

画像をダウンロードするには右クリック→名前をつけて画像を保存→保存ダイアログでOK、という
人間と同じ手順を実装してもいいのですが、ちょっと芸がない。
前回から引き続き、Flickrでもう少し遊んでみます。

画像をダイアログ開かずにダウンロードする

画像のURLさえわかればHTTP Requestアクティビティを使って直接ダウンロードできます。

画面中央の投稿写真をダウンロードしてみたいと思います。
picture.png

Get Attributeで画像のURLを取得

というわけで、まずは画像のURLを取り出します。
IEであればF12(又は右クリック→「要素の検証」)でHTMLの構造をチェック。
".jpg"で探すと画像のURLが見つかりました。
html.png
content, property, metaタグで掴めそうです。

URL取り出しに使うのはGet Attributeアクティビティ。
content要素の値を取りたいので、Attributeには"content"を指定。
property.png
前回同様、Flickrの場合は自動で生成されるSelectorがアテにならないので、自分でSelector組みます。
selector.png
これを実行すればcontent要素の値=画像のURLを取得できるので、後はダウンロードするだけです。

Http Requestでローカルフォルダにダウンロード

Http Requestアクティビティで、画像URLにGETかけてファイルをダウンロードします。
・EndPointには画像URL(この例では"URL"という変数に入れてます)
・MethodはGETのまま
・ResourcePathにはダウンロード先のファイルパス
 ※フォルダ省略した場合は自分のプロジェクトフォルダに落ちてきます。
property2.png

で、実行。プロジェクトフォルダ内にダウンロードできました。
実際にはファイル名は固定でなくPath.GetFileName(URL)で元の名前を生かした方が良いですね。
download.png

今回はここまで。

UmegayaRollcake
UiPath Academyの外堀を浅く埋める形でUiPathネタを書いていこうと思ってます。
https://www.youtube.com/channel/UCdo1xFEK-wRiVIQDs2cdvUg
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away