from selenium import webdriver
import time
from selenium.webdriver.common.by import By
driver=webdriver.Edge()
driver.get("https://www.baidu.com")
inputTag=driver.find_element(By.ID,'kw')
time.sleep(2)
inputTag.send_keys('python')
submit=driver.find_element(By.ID,'su')
submit.click()
自动登录百度网盘卡在按钮这一步 就先试一下简单的按钮 这个是可行的 但是这个也是用id定位而不是class
改为使用class定位后 可以输入关键字 但是无法点击按钮
from selenium import webdriver
import time
from selenium.webdriver.common.by import By
driver=webdriver.Edge()
driver.get("https://www.baidu.com")
inputTag=driver.find_element(By.CLASS_NAME,'s_ipt')
time.sleep(2)
inputTag.send_keys('python')
submit=driver.find_element(By.CLASS_NAME,'bg s_btn')
submit.click()
报错如下,也无法定位:



三改
submit=driver.find_element(By.CLASS_NAME,'s_btn')
submit.click()
改成这样就可以了 因为classname里有空格 所以只取部分
但是不太明白为什么没有定位到前面的元素
参考:selenium+python 自动化——class定位:class属性有空格
本文介绍了在使用Selenium进行自动化测试时,遇到的通过class定位元素的问题。在尝试使用class定位百度网盘自动登录的按钮时,由于class名包含空格,导致定位失败。通过修改定位方式,只取class名的一部分解决了问题,但对为何未能定位到完整class名的元素仍存在疑问。参考了相关资料来理解这一现象。
510

被折叠的 条评论
为什么被折叠?



