当前位置: 首页 > news >正文

selenium webdriver 学习笔记(三)

selenium webdriver

一、上传文件操作

  上传文件夹一般要打开一个本地窗口,从窗口选择本地文件添加。所以一般会卡在如何操作本地窗口添加上传文件。

  其实,在selenium webdriver没我们 想的那么复杂。只要定位到上传按钮,通过send_keys添加本地文件path就可以了。绝对path和相对path都可以,关键是上传文件存在。

示例:

from selenium import webdriver

import os,time

#脚本要与测试html同一目录

file_path = 'file:///' + os.path.abspath('upload_file.html')

driver.get(file_path)

#定位到上传按钮,添加本地文件

driver.find.element_by_name("file").send_keys('D:\upload_file.txt')

time.sleep(2)

 

driver.quit()

 

二、下拉框处理

  下拉框是我们最常见的一种页面元素,对于一般的元素,我们只需要一次就定位。下拉框的内容需要进行两次定位,先定位到下拦框,再定位下拉框内里的选项。

1. 操作下拉框例子

#先定位置到下拉框

m = browser.find_element_by_id("City")

#再点击下拉框下的选项

m.find_element_by_xpath("****").click()

time.sleep(2)

browser.quit()

 

 

 

 

 

 

 

转载于:https://www.cnblogs.com/yu2000/p/4248123.html

相关文章:

  • 4在二元树中找出和为某一值的所有路径
  • Android.Hack.02_Animations
  • [转]Asp.net MVC中Html.Partial, RenderPartial, Action,RenderAction 区别和用法
  • PowerManager Android 电源管理
  • ZeroMQ接口函数之 :zmq_strerror - 获取ZMQ错误描述字符串
  • 世界国家省份城市县区街道村地址邮编常用通用功能最全API - 多级联动 - 淘宝天猫阿里巴巴技术赏析...
  • ×××S 2012 Report Items -- 独立报表单元
  • 基于Netty与RabbitMQ的消息服务
  • 32_使用BeanUtils工具包操作JavaBean
  • 常用HTTP状态码
  • 怎样将U盘设置成只读属性
  • Sum、if、mod隔列求和
  • 有关android 应用的plugin框架调研
  • 数据结构之查找(php代码实现)
  • redis常用命令
  • 【159天】尚学堂高琪Java300集视频精华笔记(128)
  • 【node学习】协程
  • EventListener原理
  • JAVA 学习IO流
  • JavaScript中的对象个人分享
  • Java读取Properties文件的六种方法
  • js递归,无限分级树形折叠菜单
  • PHP 小技巧
  • python_bomb----数据类型总结
  • Python3爬取英雄联盟英雄皮肤大图
  • spring + angular 实现导出excel
  • Vue小说阅读器(仿追书神器)
  • 二维平面内的碰撞检测【一】
  • 分享一个自己写的基于canvas的原生js图片爆炸插件
  • 机器学习中为什么要做归一化normalization
  • 罗辑思维在全链路压测方面的实践和工作笔记
  • 前端 CSS : 5# 纯 CSS 实现24小时超市
  • 无服务器化是企业 IT 架构的未来吗?
  • 怎样选择前端框架
  • 正则学习笔记
  • 长三角G60科创走廊智能驾驶产业联盟揭牌成立,近80家企业助力智能驾驶行业发展 ...
  • 好程序员大数据教程Hadoop全分布安装(非HA)
  • ​ 轻量应用服务器:亚马逊云科技打造全球领先的云计算解决方案
  • #1015 : KMP算法
  • (NO.00004)iOS实现打砖块游戏(九):游戏中小球与反弹棒的碰撞
  • (二)Linux——Linux常用指令
  • (十七)Flask之大型项目目录结构示例【二扣蓝图】
  • (使用vite搭建vue3项目(vite + vue3 + vue router + pinia + element plus))
  • (四)c52学习之旅-流水LED灯
  • (一)使用Mybatis实现在student数据库中插入一个学生信息
  • **PyTorch月学习计划 - 第一周;第6-7天: 自动梯度(Autograd)**
  • .a文件和.so文件
  • .NET 使用 ILMerge 合并多个程序集,避免引入额外的依赖
  • .NET/ASP.NETMVC 深入剖析 Model元数据、HtmlHelper、自定义模板、模板的装饰者模式(二)...
  • .NET中的十进制浮点类型,徐汇区网站设计
  • .pub是什么文件_Rust 模块和文件 - 「译」
  • //解决validator验证插件多个name相同只验证第一的问题
  • @RequestMapping-占位符映射
  • @require_PUTNameError: name ‘require_PUT‘ is not defined 解决方法
  • [ CTF ] WriteUp- 2022年第三届“网鼎杯”网络安全大赛(朱雀组)