首页 > 编程语言 >python selenium 元素定位方法

python selenium 元素定位方法

时间:2023-05-08 18:36:43浏览次数:36  
标签:定位 wd name python 元素 selenium find

1.通过元素的id属性进行元素定位,在html中元素的id是唯一的

  定位方法:find_element_by_id(id)

from selenium import webdriver

# 创建 WebDriver 对象,指明使用chrome浏览器驱动
wd = webdriver.Chrome()
# 调用WebDriver 对象的get方法 可以让浏览器打开指定网址
wd.get('https://www.baidu.com')
wd.find_element_by_id('kw').send_keys('selenium ')根据id获取输入框输入selenium 

2.通过元素的name属性进行元素定位,,在html中元素的name不是唯一的,是可以重复的。如果存在多个相同属性,那么默认定位到的是第一个.

  定位方法:find_element_by_name(name)

from selenium import webdriver

# 创建 WebDriver 对象,指明使用chrome浏览器驱动
wd = webdriver.Chrome()
# 调用WebDriver 对象的get方法 可以让浏览器打开指定网址
wd.get('https://www.baidu.com')
wd.find_element_by_class_name('kw').send_keys('selenium ')根据name获取输入框输入selenium 

 

3.通过元素的class属性进行元素定位,在html中元素的class不是唯一的,是可以重复的。如果存在多个相同属性,那么默认定位到的是第一个。

  定位方法:find_element_by_class_name(class_name)-------注意,这里面只能使用class其中的一个属性值

from selenium import webdriver

# 创建 WebDriver 对象,指明使用chrome浏览器驱动
wd = webdriver.Chrome()
# 调用WebDriver 对象的get方法 可以让浏览器打开指定网址
wd.get('https://meirongmendian.xxzcloud.com/dist/#/onepages/storeLogin/storeLogin')
wd.find_element_by_class_name('uni-input-input').send_keys('19115542024')#定位元素class属性,send_keys,输入的内容

4.通过tag_name定位

通过元素的标签名称进行定位,在同一个页面中,同种标签元素会很多,不太建议使用。如果存在多个相同属性,那么默认定位到的是第一个。(因为百度首页包含多个input标签,所以下面的示例仅用于示例)

定位方法:find_element_by_tag_name(tag_name)

from selenium import webdriver

# 创建 WebDriver 对象,指明使用chrome浏览器驱动
wd = webdriver.Chrome()
# 调用WebDriver 对象的get方法 可以让浏览器打开指定网址
wd.get('https://meirongmendian.xxzcloud.com/dist/#/onepages/storeLogin/storeLogin')
wd.find_element_by_tag_name('uni-input-input').send_keys('19115542024')#定位元素tag_name属性,send_keys,输入的内容

 

标签:定位,wd,name,python,元素,selenium,find
From: https://www.cnblogs.com/wzcc/p/17382776.html

相关文章

  • python 打包
    1,单文件打包pyinstaller-F-wfile.py-F:-w::启动exe文件,不显示控制台2,多文件打包 文件结构:testmain.pyset.py如果使用:pyinstaller-F-wmain.py发生问题:相互依赖的文件,打包后无法引用,导致报错可以使用:pyinstaller-Dmain.py-pset.py假......
  • Python绘制雷达图
    基本步骤创建一个axe对象,创建时设置参数polar为True以使用极坐标系绘制图像示例代码frommatplotlibimportpyplotaspltax=plt.subplot(111,polar=True)#设置绘制极坐标xs=['a','b','c','d','e','a']ys=[1,2,4,3,1,1......
  • 肉身布莱特-感知机python实现
    一、代码:做线性拟合importnumpyasnpfrommatplotlibimportpyplotasplt#很简单的一个体积增大和毒气量的关系拟合virulence=np.random.rand(100)volume=np.random.rand(100)virulence.sort()volume.sort()plt.scatter(volume,virulence)w=0b=0alp......
  • 用Python语言进行时间序列ARIMA模型分析
    应用时间序列时间序列分析是一种重要的数据分析方法,应用广泛。以下列举了几个时间序列分析的应用场景:1.经济预测:时间序列分析可以用来分析经济数据,预测未来经济趋势和走向。例如,利用历史股市数据和经济指标进行时间序列分析,可以预测未来股市的走向。2.交通拥堵预测:时间......
  • python快速直白入门(半新手向,老手复习向)
    主用python做项目有一段时间,这次简单总结学习下。为后面的项目编写,进行一次基础知识的查缺补漏、1、变量名和数据类型"""变量名,只能由"数字、大小写字母、_"组成,且不能以数字开头"""#整数int#hashable,不可变对象a=5#浮点数float#hashable,不可变对象a1=3......
  • (python) 数据库一次 Connection 连接,不同 cursor
    数据库一次Connection连接,不同cursor的最简洁代码:importpymysqlclassDatabase(object):connection=Nonedef__init__(self):ifnotDatabase.connection:Database.connection=pymysql.connect(host="127.0.0.1",......
  • Python语言进行代码换行常用的方法详解!
    在编写Python代码时,有效换行可以让代码变得更加美观,那么Python中如何进行代码换行?Python中换行的方法有很多,本文为大家介绍两种比较常用的方法,快来看看吧。Python建议每行代码的长度不超过80个字符。对于过长的代码,建议进行换行。1、在该行代码末尾加上续行符“\”,即......
  • python时间相关
    目录timedatetime参考博客timetime—Timeaccessandconversions—Python3.10.0documentationimporttime#1970-01-0100:00:00到现在经过了多少秒print(time.time())#返回一个时间元组print(time.localtime())#时间转字符串print(time.strftime('%Y-%m-%d......
  • python Django校验表单登录案例
    定义一个视图函数,用于处理登录表单的提交动作。在该视图函数中,使用request.POST.get()方法获取POST请求中提交的用户名和密码数据,具体代码如下:fromdjango.shortcutsimportrender,redirectfromdjango.contrib.authimportauthenticate,logindeflogin_view(requ......
  • python 自动化测试案例
    使用Selenium与unittest框架的自动化测试案例,可以用来模拟浏览器自动打开网站并提交表单:在下述代码中,我们定义了一个继承自unittest.TestCase的测试类TestLoginForm,其中setUp()方法在每个测试方法执行前会调用,用来启动浏览器并打开测试用网站。tearDown()方法在每个测......