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 正则表达式 概述及常用字符
May 04 Python
Python中文编码那些事
Jun 25 Python
在Python中操作字典之clear()方法的使用
May 21 Python
Python的迭代器和生成器
Jul 29 Python
Python数据类型详解(一)字符串
May 08 Python
Python中使用haystack实现django全文检索搜索引擎功能
Aug 26 Python
Python实现的基于优先等级分配糖果问题算法示例
Apr 25 Python
Python multiprocessing多进程原理与应用示例
Feb 28 Python
对Python中TKinter模块中的Label组件实例详解
Jun 14 Python
浅谈tensorflow中Dataset图片的批量读取及维度的操作详解
Jan 20 Python
pandas中DataFrame重置索引的几种方法
May 24 Python
方法汇总:Python 安装第三方库常用
Apr 26 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正则取img标记中任意属性(正则替换去掉或改变图片img标记中的任意属性)
2013/08/13 PHP
php+jQuery.uploadify实现文件上传教程
2014/12/26 PHP
PHP+MYSQL中文乱码问题
2015/07/01 PHP
Laravel 中获取上一篇和下一篇数据
2015/07/27 PHP
微信公众号开发之文本消息自动回复php代码
2016/08/08 PHP
PHP发送邮件确认验证注册功能示例【修改别人邮件类】
2019/11/09 PHP
laravel框架创建授权策略实例分析
2019/11/22 PHP
javascript 获取图片颜色
2009/04/05 Javascript
SOSO地图JS画出标注和中心点以html形式运行
2013/08/09 Javascript
NodeJS学习笔记之网络编程
2014/08/03 NodeJs
javascript学习笔记(一)基础知识
2014/09/30 Javascript
jQuery弹出框代码封装DialogHelper
2015/01/30 Javascript
jquery实现的Banner广告收缩效果代码
2015/09/02 Javascript
如何解决easyui自定义标签 datagrid edit combobox 手动输入保存不上
2015/12/26 Javascript
谈谈PHP中相对路径的问题与绝对路径的使用
2016/08/16 Javascript
ros::spin() 和 ros::spinOnce()函数的区别及详解
2016/10/01 Javascript
JS实现的图片预览插件与用法示例【不上传图片】
2016/11/25 Javascript
原生js实现轮播图的示例代码
2017/02/20 Javascript
Angular ng-animate和ng-cookies用法详解
2018/04/18 Javascript
Vue.js 实现微信公众号菜单编辑器功能(一)
2018/05/08 Javascript
[04:16]DOTA2全国高校联赛16强抽签
2018/05/02 DOTA
django创建自定义模板处理器的实例详解
2017/08/14 Python
用python一行代码得到数组中某个元素的个数方法
2019/01/28 Python
Django 请求Request的具体使用方法
2019/11/11 Python
python 解决cv2绘制中文乱码问题
2019/12/23 Python
如何使用PyCharm将代码上传到GitHub上(图文详解)
2020/04/27 Python
详解appium自动化测试工具(monitor、uiautomatorviewer)
2021/01/27 Python
美国知名的家庭连锁百货商店:Boscov’s
2017/07/27 全球购物
护士的自我鉴定
2014/02/07 职场文书
生产部厂长职位说明书
2014/03/03 职场文书
三八妇女节演讲稿
2014/05/27 职场文书
大学生学年个人总结
2015/02/15 职场文书
2015年音乐教研组工作总结
2015/07/22 职场文书
2015年政教主任工作总结
2015/07/23 职场文书
严以用权学习心得体会
2016/01/12 职场文书
写作之关于描写老人的好段摘抄
2019/11/14 职场文书