python自动化webdriver相关操作

一、控制浏览器相关操作

1、控制浏览器窗口大小

  • 全屏显示maximize_window()
from selenium import webdriverdriver = webdriver.Chrome()
driver.implicitly_wait(3)
#全屏显示
driver.maximize_window()
  • 指定浏览器大小set_window_size(w, h)
#指定浏览器大小
driver.set_window_size(600,400)

2、控制浏览器前进forward()和后退back()

#前进
driver.forward()
#后退
driver.back()

3、刷新refresh()

#刷新页面
driver.refresh()

4、窗口截屏

img_dir = "C:\\测试\\img.png"
driver.save_screenshot(img_dir)

二、webdriver常用方法

序号 方法 描述
1 clear() 清除
2 send_keys(“value”) 输入内容
3 click() 点击事件
4 submit() 提交
5 size 元素尺寸
6 text 元素文本
7 get_attribute() 获取属性
8 is_displayed() 查看该元素是否用户可见

三、鼠标操作

序号 方法 描述
1 click() 鼠标点击事件
2 move_to_element() 鼠标悬停效果
3 context_click() 鼠标右击事件
4 double_click() 鼠标双击事件
5 drag_and_drop() 鼠标拖动事件

1、单击事件

from selenium import webdriver
from selenium.webdriver import ActionChains
from selenium.webdriver.common.by import Bydriver = webdriver.Chrome()
driver.implicitly_wait(3)
driver.get("https://www.baidu.com")
driver.find_element(By.ID,"kw").send_keys("单击事件")
element = driver.find_element(By.CSS_SELECTOR,'#su')
ActionChains(driver).click(element).perform()

2、鼠标悬停

#鼠标悬停
ActionChains(driver).move_to_element(element).perform()

3、鼠标右击事件

#鼠标右击击事件
ActionChains(driver).context_click(element).perform()

4、鼠标双击事件

#鼠标双击事件
ActionChains(driver).double_click(element).perform()

5、鼠标拖动事件

#鼠标拖动事件
tag = driver.find_element(By.CSS_SELECTOR,"#div1")
ActionChains(driver).drag_and_drop(element,tag).perform()

四、键盘相关操作

序号 方法 描述
1 send_keys(Keys.BACK_SPACE) 删除键(BackSpace)
2 send_keys(Keys.SPACE) 空格键(Space)
3 send_keys(Keys.TAB) Tab 键
4 send_keys(Keys.ESCAPE) ESC 键
5 send_keys(Keys.ENTER) Enter 回车键
6 send_keys(Keys.CONTROL,“a”) Ctrl+a | Ctrl+c | Ctrl+x | Ctrl+v
7 send_keys(Keys.F1) F1~F12

以Enter回车键为例演示

from selenium import webdriver
from selenium.webdriver.common.by import By
# 引入Keys模块
from selenium.webdriver.common.keys import Keys
driver = webdriver.Chrome()
driver.get("https://www.baidu.com")
#键盘按键操作
element=driver.find_element(By.ID,"kw")
element.send_keys("Enter回车事件")
element.send_keys(Keys.ENTER)

五、显示等待和隐式等待

from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support import expected_conditions
from selenium.webdriver.support.wait import WebDriverWaitdriver = webdriver.Chrome()
#隐式等待
driver.implicitly_wait(3)
driver.get("https://www.baidu.com")
#显示等待
WebDriverWait(driver,5,1).until(expected_conditions.visibility_of_element_located(By.ID,"kw"))

python自动化之控制浏览器相关推荐

  1. Selenium2+python自动化5-操作浏览器基本方法

    前言 前面已经把环境搭建好了,这从这篇开始,正式学习selenium的webdriver框架.我们平常说的 selenium自动化,其实它并不是类似于QTP之类的有GUI界面的可视化工具,我们要学的是 ...

  2. Selenium3+python自动化008-操作浏览器基本方法

    一.打开网站 1.第一步:从selenium里面导入webdriver模块 2.打开Firefox浏览器(Ie和Chrome对应下面的) 3.打开百度网址 二.页面刷新 1.有时候页面操作后,数据可能 ...

  3. python 浏览器自动化 弹窗控制_selenium 网页自动化 - 在访问一个网页时弹出的浏览器窗口,我该如何处理?...

    特别鸣谢 本文来自柠檬班-python 自动化第 25 期 铃铛同学 在做作业时遇到的问题,并提供的解决方案! 特别感谢铃铛同学.如果你是柠檬班的学生,热烈欢迎你来投稿技术文章哦! 前言 相信大家在使 ...

  4. python自动化操作浏览器

    python的语法精炼简洁,并且很方便集成自动化工具selenium,因此特别适合各个行业的工作人员学习和编写简单程序来实现"机器人助理"帮我们处理频繁重复的网站操作. 废话不多说 ...

  5. 云计算开发教程:Python自动化运维开发实战流程控制

    今天这篇文章是给大家分享一些云计算开发教程,今天讲解的是:Python自动化运维开发实战流程控制. Python条件语句是通过一条或多条语句的执行结果(True或者False)来决定执行的代码块. P ...

  6. python自动化控制运动_Python +selenium自动化帮你预订运动场地

    导语 炎热的夏天,正是换上短裤短裙晒身材的时候.但是,身材不好怎么办?运动是一个选择,特别是像我们程序员行业,天天坐在空调办公室,更应该出出汗,正所谓:冬练三九,夏练三伏. 下班后,约上公司的妹子,打 ...

  7. python自动化控制_python用于自动化控制编程

    Python自动化是做什么的 软件测试里面有Python自动化测试这个课程吗? 在人工智能+大数据的飞速发展的大环境下,Python开发语言日渐火爆,Python自动化测试也将逐渐取代传统的软件测试, ...

  8. python自动化模拟浏览器

    采用python自动化模拟浏览器操作 # -*- coding: utf-8 -*-""" 通过splinter刷12306火车票 可以自动填充账号密码并登陆,接下来的事 ...

  9. python控制手机模拟器_Appium+python自动化之连接模拟器并启动淘宝APP(超详解)...

    简介 上一篇讲解完模拟器的安装.配置好以后,就好比我们手机已经买好,并且系统已经做好了,就差我们用数据线和电脑连接开始实战了,这篇宏哥就带着小伙伴们和童鞋们趁热打铁,讲解和分享一下如何连接模拟器(电脑 ...

  10. 用python做自动化控制-用 Python 自动化办公能做到哪些有趣或有用的事情?

    首先,我是一名数据分析师-- But,我还有一项短信资源管理的工作,从收集各部门需求开始,到检查文案策略等,最后在系统上创建,整个流程每天都要重复进行3-4个小时,工作特别繁琐而缺乏技术性,不过这个工 ...

最新文章

  1. Galaxy v-21.01 发布,新的流程和历史栏体验
  2. 一个同步github上fork过来的项目的批处理脚本
  3. Android -- isInEditMode
  4. 设计模式--适配器(Adapter)模式
  5. win7降低屏幕亮度_深度解析:Redmi K20 Pro 第七代屏幕指纹技术
  6. matlab 滤掉高斯噪声吗,我想问一下:怎么用matlab编写函数对图像进行高斯滤波以去除噪声...
  7. 深入探讨用位掩码代替分支(8):SSE指令集速度测试
  8. java 素数欧拉筛选_[C++]欧拉素数筛的理解与实现
  9. 开源软件那么多,我们该如何选择?|洞见
  10. 实验五 burpsuite重放攻击实验
  11. select选择框在谷歌火狐和IE样式的不同
  12. 17. 促销,市场营销和内容页
  13. Linux 下常用软件包安装
  14. Centos7安装uwsgi出现关于SSL错误的问题
  15. python豆瓣电影爬虫
  16. Flume 入门教程(超详细)
  17. 白色恋人--18首扣人心弦的经典情歌
  18. 一周 Go World 新鲜事-2019W11
  19. MMD初尝试1(骨骼系统)
  20. python爬虫开发数据库设计_基于Python的DBLP数据库爬虫系统

热门文章

  1. Google浏览器设置不自动更新:关闭谷歌浏览器自动更新方法(总是自动更新提示失败)
  2. 街头篮球服务器未响应,肝的飞起 《街头篮球》魔王试炼FAQ
  3. Rhino6.5软件安装包详细安装教程
  4. CAD-Cass小结(5)————WIN10安装并运行CAD2006及Cass7.0
  5. 分享一个返利系统源码,前端uni+后端php开发的影票返利系统源码
  6. 2018年的生活及工作计划
  7. mindmanager2021思维导图许可密钥V21.0.334最新版免费安装下载
  8. 解决Veil—Evasion安装中git clone导致失败的问题
  9. 图灵测试其实已经过时了
  10. 共模干扰和差模干扰的处理方式