Seleniumをやっていると、要素を指定する良い方法が選べないことが出てきます。
今回は、spanタグしかない要素をクリックする方法です。
参考にさせていただいたサイトはこちら。
https://stackoverflow.com/questions/44188288/click-span-element-using-selenium?rq=1
例
HTMLソースはこちら
<span> スパン要素 </span>
指定方法
このHTMLから、”スパン要素” の文字列を検索してクリックする場合の指定の仕方です。
WebElement spanValue =driver.findElement(By.xpath("//span[normalize-space()='スパン要素']"));
spanValue.click();
気になるのは、normalize-space
これは何をしているのか?
normalize-space とは
htmlファイルは、インデントや改行など、表には見えてこない編集がされていることがあります。この不要なものを取り除いて、ウェブサイト上でコピーしたのと同じ結果を出してくれるのが、normalize-space です。
つまり、 xpath から不要な改行や空白を取り除いたものが、”スパン要素”であるものをクリックするということになります。
Originally posted 2020-02-04 01:57:06.