![](/img/trans.png)
[英]unable to select an element using xpath in selenium and python
[英]Unable to click element after select by XPATH Selenium Python
我正在尝试单击 XPATH 的“登录”按钮,但在某些网站上仍然存在问题(确实。com,ZB73C2D22763D1CE2143A3755C1.D0AD3AZ.com) 最初,我尝试使用 class 但遇到了多类问题。
它可以很好地打印 object,但在 click() 上会出错。
from selenium import webdriver
from selenium.webdriver.common.by import By
driver = webdriver.Safari()
def startBot(userName,passwordj,url):
driver.get('https://www.indeed.com/')
driver.maximize_window()
a = driver.find_element(By.XPATH, '//*[@id="gnav-main-container"]/div/div/div[2]/div[2]/div[2]/a')
print(a)
a.click()
startBot("","","https://indeed.com/")
有时通常的点击不起作用,这时需要使用javascript来点击按钮,下面是代码示例:
element=driver.find_element(By.XPATH,'//*[@id="gnav-main-container"]/div/div/div[2]/div[2]/div[2]/a')
driver.execute_script("arguments[0].click();", element)
要单击带有文本作为登录的元素,您需要为element_to_be_clickable()诱导WebDriverWait ,您可以使用以下定位器策略:
使用XPATH :
driver.execute("get", {'url': 'https://in.indeed.com/?r=us'}) WebDriverWait(driver, 20).until(EC.element_to_be_clickable((By.XPATH, "//a[starts-with(@href, 'https://secure.indeed.com/account/login') and text()='Sign in']"))).click()
注意:您必须添加以下导入:
from selenium.webdriver.support.ui import WebDriverWait from selenium.webdriver.common.by import By from selenium.webdriver.support import expected_conditions as EC
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.