html - Selenium---can't click on an image -


i have function , not able click on of magnifying glasses page. have tried until now, using different alternatives. commented, tried until now.

def lupa():      elements = browser.find_elements_by_css_selector("a[onclick='return go(event, 2)'] > img[title='details']") element in elements:     #element.click()     element.send_keys(keys.space)     time.sleep(1) 

please see below how looks html code.

<a href="#" onclick="return go(event, 2)">                  <img title="details" src="/common/images/detail.gif"> </a> 

this old xpaths used in order click on image.

 #browser.find_element_by_xpath(".//*[@id='resultstable']/tbody/tr[17]/td[11]/a[2]/img").click()         #lupa = browser.find_element(by.xpath("//img[@src='/common/images/detail.gif']"))         #lupa = browser.find_element(by.cssselector("a[src='/common/images/detail.gif']"))         #lupe = browser.find_elements_by_css_selector("a[src='/common/images/detail.gif']"))         #lupa=browser.find_element_by_link_text("details").click()         #lupa= browser.find_element_by_id("details").click()         #elements = browser.find_elements_by_css_selector("a[src='/common/images/detail.gif']")) 

thank answer!

cohen

most of locators tried aren't valid. should spend time learning different locator types , how work.

given html, css selector below should find img tag(s) want.

img[title='details'] 

another thing, not using implicit wait correctly. it's set once life of driver. calling on , on nothing. don't want use implicit wait, use explicit wait instead. @ tutorials webdriverwait.


edit: clicking img tag should work find since it's surrounded desired a tag. but... if need click a tag specifically, should able use locators below.

more specific css selector

a[onclick='return go(event, 2)'] > img[title='details'] 

xpath

//a[@onclick='return go(event, 2)'][./img[title='details']] 

Comments

Popular posts from this blog

angular - DownloadURL return null in below code -

meteor - inserting data to database gives error "insert failed: Method '/texts/insert' not found" -