2017-06-12 29 views
0

我想问你,请在这里帮助我一个基本问题。 无法点击具有以下2个字符的图片:标题和src链接。 我想现在为止使用XPath:如何点击一个图像,有一个标题和src

".//*[@id='resultsTable']/tbody/tr[2]/td[11]/a[2]/img" 

elmlupa=browser.find_element_by_xpath('//a[img/src="/common/images/Detail.gif"]').click() 

"//img[@title='details']" 
##以后编辑:我用XPATH甚至用从萤火虫/ firepath:
#sortam dupa decision date manual 
#clicuim pe prima lupa 
browser.implicitly_wait(2) 
browser.switch_to.default_content() 
browser.switch_to.frame("main") 
browser.implicitly_wait(2) 
time.sleep(10) 
elmlupa = browser.find_element_by_xpath(".//*[@id='resultsTable']/tbody/tr[2]/td[11]/a[2]/img").click() 

enter image description here

预先感谢您!

回答

1

尝试下面的代码行:

elmlupa=browser.find_element_by_xpath('//a[img[@title="Details"]]').click() 

注意XPath是大小写敏感的:"Details" != "details"

+0

谢谢@安德森。我试过了,仍然收到了同样的错误,没有找到'loop'的图片,我甚至试着用firebug/firepath XPATH,但仍然找不到它。你知道网站是否有某种保护点击项目?我还必须说,在每一帧的每一行都有相同的循环细节,也许这会产生错误?仅仅因为有超过20个循环,页面上有相同的细节? – Cohen

+0

嗨,我看到了所有来自桌面的结果都会进入一个iframe,这是否会以某种方式改变游戏?因此,在主框架内部,结果会填充到iframe中,我认为这就是为什么它不能找到图像。想吗? – Cohen

+0

是的,要处理'iframe'里面的元素,你应该[切换到它](第一个)(https://stackoverflow.com/questions/7534622/selecting-an-iframe-using-python-selenium/24286392#24286392) 。有几种可能的方法来处理'iframe'。让我知道如果从提供的方法链接不适合你 – Andersson

0

以下尝试: browser.find_element_by_xpath('// IMG [@标题= “详细信息” 和@src =“/ common/images/Detail.gif”]')。click()

此外,在某些情况下,您可能需要单击而不是img。

+0

谢谢@ sen4ik!我这样做,仍然有错误。我认为这个问题来自这样一个事实,即有超过20张图片具有相同的标题和相同的src代码。这可能会造成问题? – Cohen

+0

您可以在'// a [1]/img [@ title =“详情”和@src =“/ common/images/Detail.gif”]' – sen4ik

+0

'中指定要点击图片的链接的索引谢谢@ sen4ik!我只是尝试过,仍然有相同的错误。该图像位于桌子内......不知道这是否会成为问题,或者该网站是否具有某种保护功能。你知道我能看到是否有保护吗? – Cohen

相关问题