从0开始python学习-31.selenium 文本输入框、下拉选择框、文件上传、时间插件选择元素定位

这篇具有很好参考价值的文章主要介绍了从0开始python学习-31.selenium 文本输入框、下拉选择框、文件上传、时间插件选择元素定位。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

1. 纯文本输入框

2. 存在默认值的文本输入

 3. 下拉选择框

4. 输入后下拉选择框

5. 文件上传

6. 时间插件


1. 纯文本输入框

从0开始python学习-31.selenium 文本输入框、下拉选择框、文件上传、时间插件选择元素定位,python,python,学习,selenium,开发语言,测试工具

driver.find_element(By.XPATH,'/html/body/div[2]/td[2]/input').send_keys('测试名称')

2. 存在默认值的文本输入

注意:

1. 这种存在默认值的情况在做自动化测试的时候可以选择不做处理,直接略过该元素,也可以先将默认值清除后再进行输入的方式进行测试

2.如果是下图这种需要具有唯一性的数据,可以使用随机数的方式进行写入,可以有效避免冲出ID出现

从0开始python学习-31.selenium 文本输入框、下拉选择框、文件上传、时间插件选择元素定位,python,python,学习,selenium,开发语言,测试工具

driver.find_element(By.XPATH,'/html/body/div[2]/tr[3]/td[2]/input').clear()
driver.find_element(By.XPATH,'/html/body/div[2]/tr[3]/td[2]/input').send_keys('ID123'+str(randint(100,999))+'K')

 3. 下拉选择框

从0开始python学习-31.selenium 文本输入框、下拉选择框、文件上传、时间插件选择元素定位,python,python,学习,selenium,开发语言,测试工具

Select(driver.find_element(By.XPATH,'/html/body/div[2]/tr[8]/td[2]/select')).select_by_value('1')

4. 输入后下拉选择框

注意:下拉选择的元素为【<strong>baidu12 [null]</strong>】,使用xpath的方式可能无法定位到,可以通过手写xpath来完成

从0开始python学习-31.selenium 文本输入框、下拉选择框、文件上传、时间插件选择元素定位,python,python,学习,selenium,开发语言,测试工具

# 先找到元素后输入关键词
driver.find_element(By.XPATH,'/html/body/div[2]/tr[6]/td[2]/input[1]').send_keys('baidu12')
sleep(2)
# 等待2秒让下拉框能加载完成后选择需要的选择后点击
# 这种下拉选择元素的xpath不确定,所以可以根据标签来手动写xpath
driver.find_element(By.XPATH,'//strong[text()="baidu12"]').click()

5. 文件上传

  • 文件上传因为点击【浏览】选择的框非浏览器中的操作了,因为无法使用自动化脚本来进行选择,选择使用强制写入的方式将文件路径写入
  • 文件上传有个明显特征就是【type="file"】,只要照导这个就能进行写入,如下

从0开始python学习-31.selenium 文本输入框、下拉选择框、文件上传、时间插件选择元素定位,python,python,学习,selenium,开发语言,测试工具

driver.find_element(By.XPATH,'/html/body/div[2]/tr[14]/td[2]/span/div[1]/div/div/button').click()
sleep(5)
# 这里应该【本地上传】的xpath一直会变,所以使用文本的方式点击会更准确一点 //li[text()='本地上传']
driver.find_element(By.XPATH,'//li[text()="本地上传"]').click()

sleep(2)
# 文件上传需要写入外部文件,自动化脚本无法点击浏览器外的内容,所以这里选择强制写入文件的方式,注意一点就是文件的type=file,所以这里一定要找type=file的元素对应xpath
driver.find_element(By.XPATH,'//input[@type="file"]').send_keys(r'D:\python\test\1.png')  
sleep(1)
driver.find_element(By.XPATH,'/html/body/div[6]/div[1]/div[3]/span[1]/input').click()

6. 时间插件

  • 时间插件选择首先需要获取到输入框的xpath:e = driver.find_element(By.XPATH,'//*[@id="start_time"]')
  • 根据获取到的XPATH在js中可以调试:$x('//*[@id="start_time"]')[0].value='2023-10-06 10:00:38'
  • 然后进行强制写入的方式进行:driver.execute_script('arguments[0].value="2023-10-06 10:00:38"',e)

从0开始python学习-31.selenium 文本输入框、下拉选择框、文件上传、时间插件选择元素定位,python,python,学习,selenium,开发语言,测试工具从0开始python学习-31.selenium 文本输入框、下拉选择框、文件上传、时间插件选择元素定位,python,python,学习,selenium,开发语言,测试工具文章来源地址https://www.toymoban.com/news/detail-740792.html

driver.implicitly_wait(3)
e = driver.find_element(By.XPATH,'//*[@id="start_time"]')
# 时间插件可以使用强制输入的形式写入时间,但是需要配合JS进行,方法如下
driver.execute_script('arguments[0].value="2023-10-06 10:00:00"',e)

到了这里,关于从0开始python学习-31.selenium 文本输入框、下拉选择框、文件上传、时间插件选择元素定位的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Selenium4+python被单独定义<div>的动态输入框和二级下拉框要怎么定位?

    今天在做练习题的时候,发现几个问题捣鼓了好久,写下这篇来记录   对于这种拥有二级框的选项无法定位,也不是select属性. 我们查看下HTML,发现它是被单独封装在body内拥有动态属性的独立div,当窗口点击的时候才会触发.     这个日历和上一个问题一样,也是被单独封装在最后的

    2024年02月05日
    浏览(32)
  • python之selenium库安装及用法(定位法、获取文本、文本框输入、鼠标点击、滑动滚动条)

    谷歌浏览器驱动下载地址:https://chromedriver.storage.googleapis.com/index.html 根据你电脑的谷歌浏览器版本,下载相应的就行。我下载的是110.0.5481.XX中的chromedriver_win32.zip 下载完成,解压将里面的chromedriver.exe放到你python安装路径的scripts文件夹中。 能打开百度网页说明安装成功 (一

    2023年04月27日
    浏览(42)
  • python通过selenium获取输入框的文本值爬取编辑框内容

    以百度首页的输入框为例,当输入‘你好‘后,html中的value的值会变成‘你好’ 运行代码得到以下效果

    2024年02月04日
    浏览(41)
  • element-ui 下拉选择同时可输入

    element-ui在下拉选择的同时可以输入,看官方文档的时候,发现只有allow-create勉强符合需求,可以创建并选中选项中不存在的条目,但是不能满足输入失焦以后就是输入的值,搜了网上一圈,终于找到了答案~使用blur:

    2024年02月17日
    浏览(30)
  • uni-app下拉框 可实现输入下拉框 搜索+选择组合框功能

    插件示例地址

    2024年02月11日
    浏览(41)
  • Selenium基础篇之Select下拉列表选择

    大家好,我是空空star,本篇给大家分享一下Selenium基础篇之Select下拉列表选择。 本篇使用的selenium版本如下: Version: 4.8.2 本篇使用的浏览器如下: 在Selenium中,Select是一个非常有用的类,它用于操作HTML页面中的下拉列表。使用Select可以方便地选择下拉列表中的选项,或者获

    2023年04月08日
    浏览(31)
  • 【vue+elementUI】输入框样式、选择器样式、树形选择器和下拉框样式修改

    写在style中不能加scoped,所以可以在最外层的div加一个专属名再写样式: A. 选择器的下拉弹框样式修改 el-select下拉项的的容器是div#app之外的,所以在scoped作用域内使用或/deep/修改样式无效,要想: 官网如是说:加 :popper-append-to-body=\\\"false\\\" 代码像普通样子写: B. 时间选择器的下

    2024年02月07日
    浏览(37)
  • Vant 弹出列表多选 输入框下拉选择 (可直接复制使用)

    项目要做移动端,部分功能迁移过程中发现,VantUI组件库不支持原Element组件库的部分功能,例如el-select 可以做到输入的同时下拉选择 下拉多选。 故需要手动改写,分享记录下代码。 效果图

    2024年02月11日
    浏览(53)
  • Bootstrap select2之下拉框可自定义输入和选择

    1. 引入css文件 2. 引入js文件 3. select标签引入class 我是在项目搜索框部分要加一个下拉框,本来甚至不需要上面那么多引入,都可以有一个下拉框,但是要求点击可以出现输入框自定义输入来筛选,然后想到了这个。但是想要利用表单来实现,因为不是一种表单,所以样式混乱

    2024年02月05日
    浏览(34)
  • react + antd:AutoComplete 实现既可以自由输入又能下拉选择

    在工作中遇到一个需求,既能下拉选择,有要求可以自由输入没有的选项。 刚开始考虑使用 Select 组件,发现只有多选( mode=\\\"tags\\\" )的时候才能随意输入内容,但多选又不符合当前的业务需求。 在犹豫要不要自定义一个组件来实现业务需求时,发现了 AutoComplete 组件,完美实

    2024年01月19日
    浏览(77)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包