2017-09-15 14 views
0

html内のJavascriptは、ホバーに基づいてクラス名に変更されます。そのため、私はオブジェクトをクリックすることはできません。ホバリングの動きに基づいてセレンのクラス名が変更されます

私がこれまで試してくださいどのような私のhtmlコードとオブジェクト画像

を見るためにhereを確認してください:

select_project = WebDriverWait(driver, 2).until(
    EC.presence_of_element_located((By.XPATH ,"//a[@class='smalltextnolink']"))) 
select_project.click() 

select_project = driver.find_element_by_xpath("//div/table/tbody/tr/td[2]") 
select_project.click() 

答えて

0

CSS部分一致で選択してみてください。

select_project = WebDriverWait(driver, 2).until(EC.presence_of_element_located((By.CSS_SELECTOR, 'a[class^="smalltext"]'))) 
select_project.click() 
+0

が得た 'TimeoutException'を動作しませんでした実行 – mtkilic

0

次のCSSセレクタ使用してみてください:XPathのにタグを追加することについてどのように

[onmouseover*='smalltextul'] 
0

を:

select_project = driver.find_element_by_xpath("//div/table/tbody/tr/td[2]/a") 

select_project.click()

私が考える別のオプションがあります実際にクラス別に探したい場合は、2つの要素として考慮してください:

ボタンを推移してください:Is there a way to perform a mouseover (hover over an element) using Selenium and Python bindings?

firefox = webdriver.Firefox() 
firefox.get('http://foo.bar') 
element_to_hover_over = firefox.find_element_by_id("baz") 
hover = ActionChains(firefox).move_to_element(element_to_hover_over) 
hover.perform() 

次に、新しいクラスを持つ要素を見つけると私は同じエラーを2から10までの時間を提起したが、それでもよりもクリック

関連する問題