こんにちは。リノです。
最近、AutomationAnywhereのRPAツールを使って仕事をする機会が増えてきたのですが、たまにxpathの使い方を忘れてしまうことがあったので、今回はxpathのcontainsの使い方を備忘録として書いておこうと思います。
早速、具体的な例を見ていこうと思います。
事前準備として、「xpath helper」を準備しておいてください。xpathを使う時にはかなり重宝します。
Contents
例1、ナビゲーションメニューから特定の文字が入ったリンクを取得したい
例えば、下記日経電子版のトップページのナビゲーションメニューから、「地域」の文字を含んだ要素を取得したくなったとする。
この場合、まずは「地域」の表示があるナビゲーションメニューの構成を見るのが必要になる。
そのため、まずはコンソール画面を開いて、要素がどのように構成するか確認する。すると、以下の画像のようなHTMLの構造になっていた。
ということで、まずは「li」タグの要素を抽出して、その後aタグに「地域」の文字が出てくるかを探す。探しかたは、クロームのコンソール画面からコピーを押すと、xpathも取得できるので、そこにcontainを含めるだけです。
//*[@id=”R1″]/body/div/div/ul/li[contains(a,’地域’)]
これで、「地域」の要素にアクセスすることができる。あとは、リンクを取得するだけ。
//*[@id=”R1″]/body/div
これで、hrefのリンクも取得できます。
例2、見出しメニューの中から特定の文字が入った要素を取得したい
またまた日経電子版に戻ります。今度は、「ダイセキ」の文字が入ったリストの位置を取得してみます。

先ほどと同様に、要素をコンソールから取得します。すると、下記のようにxpathが構成されていうことが判明しました。
//*[@id=”CONTENTS_SUB_TOP”]/div
ただ、このままだと検索の範囲がli
//*[@id=”CONTENTS_SUB_TOP”]/div
以上です。
例1、見出しタグから特定の文字が入った要素を取得する