2017-06-12 25 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

相關問題