|
发表于 2023-12-4 22:38:46
|
显示全部楼层
这个错误提示表明无法定位到元素,可能是因为XPath表达式不准确或者元素尚未加载完全。你可以尝试添加延时等待来确保元素的加载完成。以下是修改后的代码示例:
- from selenium import webdriver
- from selenium.webdriver.common.by import By
- import time
- wd = webdriver.Edge(r"C:\Users\lzy\Desktop\msedgedriver.exe")
- wd.get('https://i.chaoxing.com/base?vflag=true&fid=29&backUrl=http://v2.chaoxing.com')
- wd.implicitly_wait(20)
- phone = wd.find_element(By.ID, 'phone')
- phone.send_keys('xxx')
- pwd = wd.find_element(By.ID, 'pwd')
- pwd.send_keys('xxx')
- login = wd.find_element(By.ID, 'loginBtn')
- login.click()
- course = wd.find_element(By.NAME, '课程')
- course.click()
- time.sleep(10)
- # 等待元素加载完成
- time.sleep(5)
- # 使用精确的XPath表达式来定位元素
- gjaq = wd.find_element(By.XPATH, "//a[contains(text(),'人力资源招聘与选拔')]")
- gjaq.click()
复制代码
我在XPath表达式里使用了`contains`函数来匹配包含指定文本的链接元素。另外,在点击链接前添加了额外的延时等待,以确保元素已经完全加载。希望这次的解决方案能够解决问题!如果还有其他问题,请随时提问。
以上回复来自 -- ChatGPT(FishC官方接口),如未能正确解答您的问题,请继续追问。 |
|