Selenium基础知识 自动搜索

本文介绍了在使用Selenium进行自动化测试时,遇到的通过class定位元素的问题。在尝试使用class定位百度网盘自动登录的按钮时,由于class名包含空格,导致定位失败。通过修改定位方式,只取class名的一部分解决了问题,但对为何未能定位到完整class名的元素仍存在疑问。参考了相关资料来理解这一现象。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

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属性有空格

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值