selenium之文件上传

文件上传

以博客园的上传修改头像为例:

开始的头像

 

 

点击修改图像后跳转页面出现图片上传界面

 

点击上传

下面的上传方法,适用于Web页面上传功能使用input标签实现。

具体实现过程如下:

 1 from selenium import webdriver
 2 from time import sleep
 3 
 4 def pagetitle():
 5     title = print(Driver.title)
 6     url = print(Driver.current_url)
 7     return title,url
 8 
 9 def addcookie():
10     """添加cookie"""
11     cookiename = Driver.add_cookie({'name': '',
12                        'value': ''})
13     cookiepas = Driver.add_cookie({'name': '',
14                        'value': ''})
15     return cookiename,cookiepas
16 
17 Driver = webdriver.Chrome()
18 Driver.get('https://home.cnblogs.com/')
19 
20 addcookie()          #调用函数,添加cookie
21 Driver.refresh()     #刷新页面,成功进入登陆状态
22 pagetitle()          #获取当前页面url及title
23 username = Driver.find_element_by_css_selector('#header_user_right a:nth-child(2) ')
24 print(username.text)
25 username.click()
26 Driver.find_element_by_link_text('修改头像').click()
27 sleep(3)
28 addcookie()          #添加cookie
29 Driver.refresh()
30 pagetitle()
31 Driver.find_element_by_name("file").send_keys("E:\image\pian1.png")  #定位input标签,输入图片路径,上传
32 sleep(5)
33 Driver.find_element_by_id("crop_operation_submit").click()      #点击保存
34 sutext = Driver.find_element_by_id('croped_message').text       
35 print(sutext)            
36 Driver.back()            #页面回退
37 sleep(3)
38 Driver.refresh()         #刷新
39 sleep(2)
40 Driver.quit()

 

 具体的cookie获取办法见我的博客cookie方式登录一文

修改后的头像如下:

 

完成上传。

 

posted @ 2019-06-27 15:08  法卡萨多  阅读(242)  评论(0编辑  收藏  举报