fedoraxのブログ

人工知能(AI)、ブロックチェーン、プログラミングネタ、ITニュースネタなどについて書いています。

ブラウザのソースの取得

IEでソースが見れない、右クリックが禁止されているなどありますよね?
UiPathだと、その問題を解決してくれます。

1. アクティビティの配置

以下の3つを配置します

  • Find Children
  • Assign
  • Write Text File

f:id:fedorax:20191103090810p:plain
アクティビティの配置
※ Find Childrenの変わりにFind Elementでもいいけど、htmlタグが複数個ある場合は取りこぼしが発生します。
Write Text Fileの代わりにLog Messageなどでも構いません。

2. Find Childrenの設定

Find Childrenのプロパティを設定します。

  • Filter : "<webctrl tag='html' />"
  • Selector : "<html />"
  • WaitForReady : "Complete"
  • Scope : "FIND_DECENDANTS"
  • Children : [elList]

※ Selectorの<html />は、ブラウザのタイトルを入れたほうが尚よい "<html title="タイトル名" />"

3. Assignの設定

取得したHTMLの一覧からソースを取得します

  • To : [html]
  • Value : String.Join(vbCrLf, elList.Select(function(el) el.Get("outerhtml").ToString))

    1. elList から Function(el)でelに一件ずつ取得します
      ( ForEach el in elListと同じ)
    2. el(UiElement) からGet("outerhtml")でouterhtmlの属性情報を取得して、ToStringで文字列にします。
    3. String.Joinで、取得したouterhtmlの配列を、改行コード(vbCrLf)で改行して1列の文字列にします。

4. Write Text Fileの設定

HTMLソース(outerhtml)をファイルに出力します。

  • FileName : "Source.html"
  • Text :html

5. 動作確認

 ブラウザ(IE)を開いた状態で、UiPathを実行するとプロジェクトフォルダに"Source.html"が出力されていると思います。