Chromeでクリックをしたい
10/12解決しました。下部に記載しました。
---------------------------------------------------------------------
いつもお世話になっております。
Chromeでクリックをしたいのですが、
XPathを入力しても「指定された要素が見つかりませんでした。XPath=……」と出てきてしまいます。
サイトは下記画像のようになっていて、上にあるタブをクリックすると水色で囲っている部分が切り替わります。
(私は黄色い部分をクリックしたいです)
コードを出した状態で、クリックしたい場所を右クリック→検証→色がついた部分を右クリックしてCopy XPathをクリックという手順なので
XPathのコピーの仕方自体は問題ないと思います。このページの前のログイン画面ではちゃんとクリックができるようになりました。
フレーム選択を使うのかと思ったのですが、
・そもそもフレーム分けされているのか?
・仮にそうだとして親フレームなのか子フレームなのか見分け方がわからない
というところで躓いています。
F12で出てきたコードを検索するとframeやiframeはいくつかヒットするけれど、</framesetはありませんでした。
10/10追記
お久しぶりです。たくさんのコメントありがとうございました。
なかなかWinActorに触れる機会がなくお返事が遅くなりまして申し訳ございません。
>Salesforceなのか?
はい。
その通りです。anothersolutionさんの「ほぼこの画像」が、まさしく操作したい画面とそっくりです。
><iframeもしくは<frameがないか
検索して下記のような形で3つヒットしました
<iframeその1
クリックしたい場所
<iframeその2
<iframeその3
「フレーム選択」を入れ、<iframeその1のXPathを入力しました
選択モードをchildにすると指定された要素が見つかりませんでした、と出てきます。
(parentにするとエラーは出てきませんが、次のクリックでエラーがでてきます)
ちなみにXPathは「/html/body/script[1]/text()」でした。
この場合やはりフレームがあり、フレームその1の配下なのでは、ということなのでしょうが
その1があるであろう場所、目視だと<iframeがないんですね。
例えば「<iframe」と検索してヒットするとヒットした<iframeの部分が黄色くなると思います
しかしその1の部分に<iframeを探してもありません。
代わりに
(function(){
window.pfeStartTime=(new Date)).getTime();
window.Aura||(winsow.Aura.bootstrap={});
~~~
という22行に渡るソースがあり、それらが全て黄色くなっています。
これは通常の<iframeとして扱っていいんでしょうか……。
>ShadowDOM
>[shadow-root]
ちょっとまだうまく知識として飲み込めていません
ただ大変そうなのは分かりました
よりによって運用上絶対避けられないエリアなのに……。
10/12
解決しました
XPathを 「/html/body/div[4]/div[1]/section/div[1]/div[1]/one-appnav/div/one-app-nav-bar/nav/div/one-app-nav-bar-item-root[2]」にしたらクリックできるようになりました……。
クリックしたい部分の端のほうでパスを取得したらできました。
偶然の産物なのですが一応解決できてよかったです。