selenium---上传文件(send_keys)

  web自动化中经常会遇到文件上传的操作,这时候我们应该怎么进行元素定位,已经选择我们对应的文件进行上传呢?selenium中有没有其中的方法可以帮助我们呢?

文件上传

文件上传一般大致可以分为两种,一种是input标签的,一种非input标签的。这里肯定有小伙伴们什么是input标签的,这里表示的就是HTML代码中的input标签。

这里已百度为例:

 我们找到选择图片这里,查看标签名为input标签。既然是input标签,那么就直接可以通过send_keys方法进行输入。

注:这里的输入为需要上传文件的地址。

from selenium import webdriver
import time
driver = webdriver.Chrome()
driver.get('https://www.baidu.com')
# 定位图片
driver.find_element_by_class_name('soutu-btn').click()
time.sleep(3)
# 定位选择图片
driver.find_element_by_class_name('upload-pic').send_keys('D:\\123.jpg')

 

从上图可以看出来,我们已经成功的通过send_keys成功的上传图片了。那么如果不是input标签的应该怎么做呢?前面介绍过pywinauto来进行控制windows控件来进行上传文件。大家可以动手自己写一写,安静后面给大家补上。

 

 

如果安静写的文章如果对您有帮助,点个关注,持续更新。不懂的或者写错的地方,可以下方进行留言。感谢支持!

 

posted @ 2020-08-27 19:59  测试-安静  阅读(1972)  评论(0编辑  收藏  举报