2016-10-20 5 views
1

これはどのようにしてSeleniumを使ってxpath... //*[@id="hand_1308744119"]を見つけることができますか?Pythonでセレンを使用して動的なxpathを持つ要素を検索する

1308744119は動的です。唯一の定数は各要素のxpathにhand_です。

私は..

xelem=driver.find_elements_by_xpath("//*[@id='hand_']") 
xelem=driver.find_elements_by_css_selector("input[id$=hand_]") 

が、運を試してみました!

+0

はそんなにHTMLので、我々は= <簡単スパンIDを – Piyush

+0

を理解することができますすることができます"hand_1334530584" link = "http://www.etplnetwork.com/rf-optimization/" class = "handIcon" onclick = "updateTask(1334530584、this)"> user2656386

+0

これは捕捉する必要がある要素ですが、これらの要素のxpathが変化します。 – user2656386

答えて

0

私はPython上でセレンを使用したことはありませんが、xpathはすべての言語で同じように動作するはずです。

xpathに "contains"を使用します。それはあなたが望むものが含まれている要素を見つけたいとxpathに指示します。今、あなたはxpathが 'hand_'でなければならないと伝えています。以下のような

何か - これはあなたが@Idは「hand_」を含む要素を見つけたいのxpath語っている:

xelem=driver.find_elements_by_xpath("//*[contains(@id, 'hand_')]") 
+0

私はこれを試しました、運はありません – user2656386

+0

あなたは何を得ていますか?使用しているメソッドは、要素のリストではなく、要素のリストを返します。要素のリストでアクションを実行しようとしていますか(できません)?前に言及したやり方はうまくいくはずです。 xelem = driver.find_elements_by_xpath( "// *(starts、with @id、 'hand')]") –

+0

リストをフェッチして要素を印刷するだけでも可能です。いいえ、行動しない – user2656386

関連する問題