Python SELENIUM上传文件或图片实现过程


Posted in Python onOctober 28, 2019

逛网站的时候经常会遇到需要上传图片的操作,这里主要来说下selenium操作上传文件的操作。

前提条件:定位的元素必须是type 属性是file类型。即type="file",如下图:

Python SELENIUM上传文件或图片实现过程

详细用法:

Python SELENIUM上传文件或图片实现过程

参考代码:

from selenium import webdriver
import time


driver = webdriver.Chrome()


def test_open_page():
  '''打开界面'''
  driver.maximize_window()
  driver.get('http://106.233.81.250/fw/index.php?ctl=user&act=login')

def test_register(user,password):
  '''输入用户名密码'''
  driver.find_element_by_css_selector('#login-email-address').send_keys(user)
  driver.find_element_by_css_selector('#login-password').send_keys(password)
  driver.find_element_by_xpath('//input[@type="submit"]').click()
  driver.implicitly_wait(30)
  driver.find_element_by_xpath('//input[@value="取消"]').click()

def test_money():
  '''操作我要借款'''
  #driver.find_element_by_link_text('我要借款').click()
  el = driver.find_elements_by_css_selector('.pr20')
  el[2].click()
  ele = driver.find_elements_by_xpath('//div[@class="tc pt10"]/a/img')
  ele[0].click()

def test_input_info():
  '''输入借款信息'''
  driver.find_element_by_css_selector('#borrowtitle').send_keys(2)
  driver.find_element_by_css_selector('#borrowamount').send_keys(2000)
  driver.find_element_by_css_selector('#repaytime').send_keys(20)
  driver.find_element_by_css_selector('#apr').send_keys(20)
  # todo js操作滚动条
  js1 = "document.documentElement.scrollTop=1000"
  driver.execute_script(js1)
  time.sleep(1)
  elem = driver.find_elements_by_xpath('//div[@style="width:710px;"]/input[@type="text"]')
  elem[0].send_keys(2)
  driver.find_element_by_xpath('//button[@rel="file_1"]').click()
  time.sleep(1)
  driver.find_element_by_xpath('//li[text()="本地上传"]').click()
  time.sleep(1)
  # todo 文件操作上传图片
  driver.find_element_by_name('imgFile').send_keys(r'D:\file\1.png')
  time.sleep(1)
  driver.find_element_by_xpath('//input[@type="button" and @value="确定"]').click()

def test_closed():
  time.sleep(6)
  driver.quit()

test_open_page()
test_register('admin','admin')
test_money()
test_input_info()
test_closed()

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python 过滤字符串的技巧,map与itertools.imap
Sep 06 Python
python基础教程之常用运算符
Aug 29 Python
Python获取运行目录与当前脚本目录的方法
Jun 01 Python
Djang中静态文件配置方法
Jul 30 Python
python读取与写入csv格式文件的示例代码
Dec 16 Python
浅谈Tensorflow模型的保存与恢复加载
Apr 26 Python
Python交互环境下实现输入代码
Jun 22 Python
如何利用Python开发一个简单的猜数字游戏
Sep 22 Python
Python aiohttp百万并发极限测试实例分析
Oct 26 Python
快速解决Django关闭Debug模式无法加载media图片与static静态文件
Apr 07 Python
numba提升python运行速度的实例方法
Jan 25 Python
python利用后缀表达式实现计算器功能
Feb 22 Python
PYTHON实现SIGN签名的过程解析
Oct 28 #Python
Python爬虫使用代理IP的实现
Oct 27 #Python
Python搭建代理IP池实现接口设置与整体调度
Oct 27 #Python
Python搭建代理IP池实现检测IP的方法
Oct 27 #Python
浅析使用Python搭建http服务器
Oct 27 #Python
Python搭建代理IP池实现存储IP的方法
Oct 27 #Python
Python搭建代理IP池实现获取IP的方法
Oct 27 #Python
You might like
PHP输出多个元素的排列或组合的方法
2017/03/14 PHP
让ie运行js时提示允许阻止内容运行的解决方法
2010/10/24 Javascript
jQuery中 attr() 方法使用小结
2015/05/03 Javascript
浅析2种JavaScript继承方式
2015/12/04 Javascript
JavaScript从0开始构思表情插件
2016/07/26 Javascript
Node.js检测端口(port)是否被占用的简单示例
2016/09/29 Javascript
js 点击a标签 获取a的自定义属性方法
2016/11/21 Javascript
js实现4个方向滚动的球
2017/03/06 Javascript
Vue 换肤的示例实践
2018/01/23 Javascript
微信小程序实现选项卡效果
2018/11/06 Javascript
微信小程序实现Swiper轮播图效果
2019/11/22 Javascript
Element实现表格嵌套、多个表格共用一个表头的方法
2020/05/09 Javascript
[02:09]DOTA2辉夜杯 EHOME夺冠举杯现场
2015/12/28 DOTA
[40:03]Liquid vs Optic 2018国际邀请赛淘汰赛BO3 第一场 8.21
2018/08/22 DOTA
python抓取并保存html页面时乱码问题的解决方法
2016/07/01 Python
python中解析json格式文件的方法示例
2017/05/03 Python
Python+tkinter模拟“记住我”自动登录实例代码
2018/01/16 Python
Django使用Celery异步任务队列的使用
2018/03/13 Python
pandas DataFrame数据转为list的方法
2018/04/11 Python
Python图像处理之简单画板实现方法示例
2018/08/30 Python
详解Python中的测试工具
2019/06/09 Python
python 获取sqlite3数据库的表名和表字段名的实例
2019/07/17 Python
python实现数学模型(插值、拟合和微分方程)
2020/11/13 Python
Python性能测试工具Locust安装及使用
2020/12/01 Python
python中remove函数的踩坑记录
2021/01/04 Python
canvas需要在标签里直接定义宽高
2014/12/17 HTML / CSS
酒店服务实习自我鉴定
2013/09/22 职场文书
旅游管理毕业生自荐书
2014/02/02 职场文书
服务之星事迹材料
2014/05/03 职场文书
幼儿发展评估方案
2014/06/11 职场文书
党的群众路线教育实践活动个人整改措施
2014/10/27 职场文书
儿园租房协议书范本
2014/12/02 职场文书
评先进个人材料
2014/12/29 职场文书
党支部承诺书
2015/01/20 职场文书
如何书写先进事迹材料?
2019/07/02 职场文书
HTML+CSS实现导航条下拉菜单的示例代码
2021/08/02 HTML / CSS