我正在尝试自动化salesforce,但是我在定位器方面遇到了一些麻烦。我正在使用Python和selenium webdriver来做到这一点。
我正在尝试点击此元素(给定的代码段):
< th scope = "row"
class = " dataCell cellCol1 " > < a href = "javascript:srcUp(%27%2F0019E00000SLiUQ%3FsrPos%3D0%26srKp%3D001%26isdtp%3Dvw%27);"
data - seclke = "Account"
data - seclkh = "73556054e04c9691f20b5b34809356fd"
data - seclki = "0019E00000SLiUQ"
data - seclkp = "/0019E00000SLiUQ"
data - seclkr = "1"
onmousedown = "searchResultClick.mousedown(this, event)" > Harris Kemp < /a></th >
但是,由于某种原因,它找不到它。
我尝试过在网上找到的不同解决方案,但似乎都没有。
这是我的代码:
driver.switch_to.frame(1)
# driver.switch_to.frame(driver.find_element_by_id("history-iframe"))
# mouseDown() // i entered the location of the element here
# pyautogui.click() // i entered the location of the element here
这是我尝试的另一种方式:
elem = driver.find_element_by_xpath("//a[@data-seclkr='1']")
driver.execute_script("arguments[0].click();", elem)
我已经使用了所有不同的xpath,它仍然不会点击它。
如果有人能帮帮忙,我将非常感激。
答案 0 :(得分:3)
要找到“编辑”元素,您可以执行以下操作:
elem1= driver.find_element_by_xpath("//td[@class='actionColumn']")
elem1.find_element_by_xpath(".//a[@class='actionLink']").click()
如果您想点击“Harris Kemp”,请尝试:
elem1= driver1.find_element_by_xpath("//th[@scope='row']")
elem1.find_element_by_xpath(".//a[@data-seclke='Account' and text()='Harris Kemp']").click()
答案 1 :(得分:1)
您可以从网站上选择一个简单的标签并尝试类似下面的内容吗?
假设这是HTML脚本:
<div id='a'>
<div>
<a class='click'>abc</a>
</div>
</div>
你的python脚本应该是:
driver.find_element_by_xpath("//div[@id='a']//a[@class='click']")
输出应为:
<a class="click">abc</a>
然后尝试将.click()
放在python代码的末尾