使用python selenium在div中找到带有动态id的元素

时间:2017-09-25 08:34:05

标签: python-3.x selenium

我在网页上关注了elemenet,我无法在python中使用selenium单击此元素。

<input id="main:j_id118:submissions:12:j_id345" name="main:j_id118:submissions:12:j_id345" type="image" src="/psaww-dnsangular/icons/excel.gif" onclick="disableWaiting();if(typeof window.clearFormHiddenParams_main=='function'){clearFormHiddenParams_main('main');}if(typeof window.getScrolling!='undefined'){oamSetHiddenInput('main','autoScroll',getScrolling());}" alt="">"

到目前为止,我尝试了以下但没有成功。

browser.find_element_by_css_selector('img[src*="/psaww-dnsangular/icons/excel.gif"]').click()
browser.find_element_by_xpath('//input[@src="/psaww-dnsangular/icons/excel.gif"]').click()

以下是我的完整脚本。

 from selenium import webdriver
 import time
 def dnsnet_login():
    browser=webdriver.Chrome()
    browser.get('http://read-iweb-124-rv.snaponglobal.com:8080/psaww-dnsangular/index.html#/login')
    time.sleep(2)
    user=browser.find_element_by_name('username')
    user.send_keys('NSC')
    password=browser.find_element_by_name('password')
    password.send_keys('nsc')
    login=browser.find_element_by_xpath('/html/body/div[3]/div[2]/div/div/div/div/div[3]/div/form/fieldset/div[3]/button')
    login.click()
    time.sleep(11)
    toggle = browser.find_element_by_xpath('//*[@id="header-container"]/header/nav/a[1]/span')
    toggle.click()
    time.sleep(2)
    browser.find_element_by_xpath('/html/body/div[5]/ul/li[3]/a').click()
    time.sleep(7)
    browser.find_element_by_css_selector('img[src*="/psaww-dnsangular/icons/excel.gif"]').click()

除了最后一行之外,所有行都正确执行。那是

browser.find_element_by_css_selector('img[src*="/psaww-dnsangular/icons/excel.gif"]').click()***

任何人都可以帮我找到这个元素

0 个答案:

没有答案