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方式登录一文
修改后的头像如下:
完成上传。
当你试图去用自己的言语去讲清一些事物时,你会明白对此事物的理解是融会贯通还是一知半解