Selenium web自动化测试经验分享-上传文件之input标签

转眼来到了三月,到了离职再就业的高峰期。愿你不管在哪工作,不管怎样生活,向上的心都不变,继续提高的冲劲只多不少。

个人博客:https://blog.csdn.net/zyooooxie

Input标签 上传头像

input 标签的文件上传是比较好处理的,只要定位到上传按钮,用 send_keys()发送本地文件路径就可以。

注意:1.绝对路径和相对路径都可以。2.上传的文件要存在。3.上传按钮一定要符合input和 type="file"条件

下面代码是 更换百度贴吧头像:

# 前面代码需要实现登录百度
driver.get('https://www.baidu.com/p/setting/profile/portrait')
time.sleep(2)
i1 = r'D:\40x40.JPG'

# input 标签
driver.find_element_by_id('fileImg').send_keys(i1)
time.sleep(2)
# 成功更新图片
driver.find_element_by_id('savePortrait').click()
time.sleep(5)       # 可以看到实际更换后的结果

# 更换系统建议的头像
driver.find_element_by_css_selector('#recom-wildkid-2 > img').click()
driver.find_element_by_id('savePortrait').click()
time.sleep(5)

Input标签 上传多个文件

i即send_keys()发送多个文件,

下面代码 是网页版百度网盘的上传文件:

A. 使用循环方式

# 用循环的方式:要上传的文件放在列表中,遍历下上传。
shang1 = ["D:\\60x91.JPG", "D:\\40x40.JPG", "D:\\50x50.JPG", "D:\\25x25.JPG", "D:\\35x35.JPG"]
for sh in shang1:
    driver.find_element_by_id('h5Input0').send_keys(sh)     # 百度网盘web的上传文件按钮
    time.sleep(1)       # 单个文件大概上传时间

B.构造多行字符串

构造字符串的时候注意去掉末尾或者开头的换行符

# 构建多行字符串
shang2 = """D:\\60x91.JPG
D:\\40x40.JPG
D:\\50x50.JPG
D:\\25x25.JPG
D:\\35x35.JPG
D:\\45x45.JPG"""

driver.find_element_by_id('h5Input0').send_keys(shang2)

time.sleep(15)      # 所有文件全部上传的时间

单独执行第二种:
在这里插入图片描述

两个方法一起执行:

在这里插入图片描述

交流技术 欢迎+QQ 153132336 zy
个人博客 https://blog.csdn.net/zyooooxie

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值