Web上(IE)のリンクを選択します。正しく処理できた場合はTrue、処理できなかった場合はFalseを返します。
リンク文字列は完全一致・部分一致(前方一致、後方一致)いずれも指定可能です。
新しく開いたタブを操作したい場合は、getIEObj関数 (自作関数)を使います。
- 構文
- Boolean = IELINK( IE, リンク表示文字, 番号, 完全一致フラグ )
- 引数
- IE (Object)必須
- IEオブジェクト
- リンク表示文字 (String)必須
- 表示されているリンク項目 (一部分だけでも可)
- 番号 (Integer)省略可
- リンク表示文字が同じ場合に順番指定
- 完全一致フラグ (Boolean = False)省略可
- Trueの時は完全に一致するものだけを (デフォルト:False)
- 戻り値
- TRUE
- 正常
- FALSE
- 処理不能
使い方
リンク文字列の指定方法
リンク文字列は一部分でもクリックされます。
以下はYahoo! JAPANトップページにある「PayPayモール」のリンクをクリックする例。
aタグ内にある文字列をIELINKの第二引数に指定します。
リンク文字列全体を指定した場合、完全一致フラグをTrueにするのがおすすめです。
以下のようにタグが入れ子になっている場合は、タグ毎にひとかたまりとし、文字列を指定します。
例えば上記のようなHTMLの場合、以下のいずれの書き方でもリンクを開くことができます。
「NEW」や「1060」は他と被り予期してないリンクが開く可能性があるので、他と被らないようなリンク文字列を指定するようにします。
タグをまたぐリンク文字列を指定することはできません。以下は失敗します。
リンク表示文字列を取得するプログラム
以下は指定したURLにある全リンクを取得し、IELINKに指定できる文字列を取得するプログラムです。
第三引数が「1」の場合、省略可能です。
Yahoo! JAPANトップページで取得した例。
完全一致フラグ
完全一致フラグとは、リンク表示文字列全体を指定してマッチしたときTrueになります。
上記のようなHTMLのとき、1つ目は「一休.com」がクリックされ、2つ目は「一休.comレストラン」がクリックされます。
しかし、第四引数の完全一致フラグをTrueにすると、1つ目は「一休.com」がクリックされますが、2つ目はリンク文字列の一部しか指定していないため失敗します。
タグの入れ子でリンク文字列がわかれているような場合、完全一致フラグは使えません。
以下のいずれの書き方も失敗します。
この場合は部分一致で指定します。第四引数のFALSEは省略可能。
リンクをクリックする他の方法
<a>タグの属性値(id, class)で指定
id名
class名
Itemの引数は0〜(elements.length-1)の間で指定。
他の属性値で指定
「aria-label」という属性で値が「動画で検索」の場合、以下のようになります。
画像
画像のURL(src属性)がわかっている場合
alt属性がわかっている場合
全画像を取得・ループし要素を特定、もしくはaltClick関数 (自作関数)関数を使います。
使い方
-
検索結果などのページングで「次へ」リンクがある限りループする書き方。
以下はGoogleの検索結果で「次へ」がある限りクリックし続ける例。
ESCキーで強制終了します。
プログラム実行例
Yahoo! JAPANのトップページからショッピングのリンクをクリックする
楽天PointClubでランクと保有ポイント数を取得する
[syntaxHighlight language="HTML"]
- 総保有ポイント
- 559
[/syntaxHighlight] [syntaxHighlight language="INI" title="楽天.INI"][楽天] [email protected] PASS=*** [/syntaxHighlight]
