轻松自动化---selenium-webdriver(python) (九)
本节重点:
- 上传文件
文件上传操作也比较常见功能之一,上传功能没有用到新有方法或函数,关键是思路。
上传过程一般要打开一个本地窗口,从窗口选择本地文件添加。所以,一般会卡在如何操作本地窗口添加上传文件。
其实,在selenium webdriver 没我们想的那么复杂;只要定位上传按钮,通send_keys添加本地文件路径就可以了。绝对路径和相对路径都可以,关键是上传的文件存在。下面通地例子演示。
upload_file.html
<html>
<head>
<meta http-equiv="content-type" content="text/html;charset=utf-8" />
<title>upload_file</title>
<script type="text/javascript" async=""
src="http://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js
"></script>
<link href="http://netdna.bootstrapcdn.com/twitter-bootstrap/2.3.2/css/bootstrap-combined.min.css" rel="stylesheet" />
<script type="text/javascript">
</script>
</head>
<body>
<div class="row-fluid">
<div class="span6 well">
<h3>upload_file</h3>
<input type="file" name="file" />
</div>
</div>
</body>
<script src="http://netdna.bootstrapcdn.com/twitter-bootstrap/2.3.2/js/bootstrap.min.js"></script>
</html>
upload.py
#coding=utf-8
from selenium import webdriver
import os,timedriver = webdriver.Firefox()#脚本要与upload_file.html同一目录
file_path = 'file:///' + os.path.abspath('upload_file.html')
driver.get(file_path)#定位上传按钮,添加本地文件
driver.find_element_by_name("file").send_keys('D:\\selenium_use_case\upload_file.txt')
time.sleep(2)driver.quit()
其它有些应用不好找,所以就自己创建页面,这样虽然麻烦,但脚本代码突出重点。
这里找一139邮箱的实例,有帐号的同学可以测试一下~!
(登陆基础版的139邮箱,网盘模块上传文件。)
139upload.py
#coding=utf-8
from selenium import webdriver
import os,timedriver = webdriver.Firefox()driver.get("http://m.mail.10086.cn")
driver.implicitly_wait(30)#登陆
driver.find_element_by_id("ur").send_keys("手机号")
driver.find_element_by_id("pw").send_keys("密码")
driver.find_element_by_class_name("loading_btn").click()
time.sleep(3)#进入139网盘模块
driver.find_element_by_xpath("/html/body/div[3]/a[9]/span[2]").click()
time.sleep(3)#上传文件
driver.find_element_by_id("id_file").send_keys('D:\\selenium_use_case\upload_file.txt')
time.sleep(5)driver.quit()
轻松自动化---selenium-webdriver(python) (九)相关推荐
- Selenium WebDriver + python 自动化测试框架
目标 组内任何人都可以进行自动化测试用例的编写 完全分离测试用例和自动化测试代码,就像写手工测试用例一下,编写excel格式的测试用例,包括步骤.检查点,然后执行自动化工程,即可执行功能自动化测试用例 ...
- selenium webdriver (python)的基本用法一
阅在线 AIP 文档: http://selenium.googlecode.com/git/docs/api/py/index.html 目录 一.selenium+python 环境搭建..... ...
- selenium webdriver (python) 第一版PDF
前言 如果你是一位有python语言基础的同学,又想通过python+ selenium去实施自动化,那么你非常幸运的找到了这份文档,我也非常荣幸能为你的自动化学习之路带来一丝帮助. 其实,我在sel ...
- python webdriver点击指令_测开系列Selenium Webdriver Python(20)--Webdriver运行原理
Webdriver运行原理 转帖请注明出处!谢谢 在开发Webdriver的自动化脚本过程中,Webdriver后台在创建WebDriver实例的过程中,先确认浏览器的原生组件中是否存在可匹配的版本. ...
- 测开系列Selenium Webdriver Python(21)--元素定位2
以上学习的是element的基本属性和方法,那么验证点添加的技巧和方式是什么呢?我们知道自动化的过程就是人的手工测试的过程,在手工测试中需要人来判断业务是否达到需求要求,那么在自动化脚本中就要加入程序 ...
- 50+道自动化/Selenium/性能/Python面试题
写在前面 公司要求招一名自动化测试,能力要求不高,1年左右自动化经验+部分性能经验即可,让我出一份题,我就百度+公司项目遇到的问题,出了一份,出题整体思路是:接口自动化问题+性能问题+规划的ui.ap ...
- Linux运行webdriver,linux - 在chrome中运行Selenium WebDriver python绑定
我在使用Selenium时遇到了问题. 对于我的项目,我必须使用Chrome. 但是,在使用Selenium启动它后,我无法连接到该浏览器. 出于某种原因,Selenium无法单独找到Chrome. ...
- selenium webdriver python 元素操作
常用操作 click 点击某个元素 driver.find_element_by_id("su").click() clear driver.find_element_by_id( ...
- selenium webdriver python 环境搭建
1. 安装python https://www.python.org/getit/ 选择2.7版本,下载安装即可. 验证是否安装成功:打开cmd,输入"python -V",显示p ...
- selenium webdriver(python)_selenium、webdriver及浏览器的关系及对应版本安装
selenkium支持多种浏览器,包括Chrome,Safari,Firefox.Edge 等,我们以Chrome浏览器为例学习.先完成以下3步: 1 selenium安装 安装selenium和安装 ...
最新文章
- Android窗口管理服务WindowManagerService计算窗口Z轴位置的过程分析
- 数据库死锁查询及处理
- 机器人学中的一些概念3——雅克比矩阵
- 符合c语言常量12abc,《C语言》试题abc合2006上.doc
- 通过swagger下载的文件乱码解决方法,求解
- SOME/IP报文格式-Message ID
- termux配置python安装kali_利用termux安装kali
- 纯屏和液晶显示器有什么区别
- 人工智能终将自我进化?排除无用功能,让自己更加完美?
- 1074 Reversing Linked List
- 华师大的计算机专业属于提前批吗,关于华师大、上师大提前批的问题
- 有没有测试牙齿需不需要修正的软件,测一测,你的牙齿需要矫正吗?
- 联想笔记本重装系统无法进入记录
- python内置函数返回元素个数_Python内置函数
- 安装NTFS For Mac时显示文件已损坏怎么办
- 如何在以太坊网络上发布自己的代币
- 【数据结构】— 「时间复杂度」与「空间复杂度」
- 风之语.惊闻周星驰电影票房超过30亿RMB
- C++语言——求圆柱表面积
- 在伦敦金中学画趋势线