当前位置: 首页 > news >正文

python selenium webdriver入门基本操作

python selenium webdriver入门基本操作 

未经作者允许,禁止转载!

from selenium import webdriver
import time

driver=webdriver.Chrome()
driver.get('http://www.baidu.com')#进入百度首页
driver.maximize_window()#窗口最大化
time.sleep(1)
driver.set_window_size(480,600)#窗口大小变化
time.sleep(1)
driver.maximize_window()
time.sleep(1)
driver.set_window_size(500,700)
time.sleep(1)
driver.maximize_window()
time.sleep(1)
driver.set_window_size(600,800)
time.sleep(1)
driver.maximize_window()
time.sleep(1)
driver.set_window_size(700,1000)
print'#窗口大小变化结束'
time.sleep(2)
driver.find_element_by_id('kw').send_keys('selenium')#输入关键字selenium
time.sleep(1)
driver.find_element_by_id('su').click()#进入selenium页面
time.sleep(3)
driver.find_element_by_xpath("//*[@id='1']/h3/a").click()
print'进入selenium官网'
time.sleep(3)
driver.find_element_by_link_text('功能自动化测试工具——Selenium篇').click()#通过锚文本定位
time.sleep(10)
windows=driver.window_handles
driver.switch_to_window(windows[1])#切换窗口

#driver.refresh()
driver.maximize_window()
time.sleep(2)
driver.close()
windows=driver.window_handles
driver.switch_to_window(windows[1])#切换窗口
time.sleep(2)
driver.close()
windows=driver.window_handles
driver.switch_to_window(windows[0])#切换窗口
content=driver.find_element_by_xpath("//*[@id='1']/div[2]").text#打印出这一部分的内容
print content
driver.back()
print'返回到百度首页'
time.sleep(2)
driver.forward()
print'进入下一页'
time.sleep(5)
driver.find_element_by_xpath("//*[@id='u']/a[2]").click()
driver.find_element_by_xpath("//*[@id='wrapper']/div[4]/a[1]").click()#处理有下拉框的元素
time.sleep(1)
driver.find_element_by_xpath("//*[@id='gxszButton']/a[1]").click()
time.sleep(1)
driver.switch_to_alert().accept()#处理警告弹窗
time.sleep(2)
print'处理好警告弹窗'
js="var q=document.documentElement.scrollTop=10000"
driver.execute_script(js)#处理右侧的滚动条
time.sleep(3)
print"右侧的滚动条拉倒最低处"
driver.close()

大家可以试一试这段代码,百分之百跑的通!

相关文章:

  • 对ChemDraw Prime 16.0你了解多少
  • vue项目打包上线的流程
  • css-css权威指南学习笔记1
  • 前端常见面试题总结
  • 最近帮客户实施的基于SQL Server AlwaysOn跨机房切换项目
  • 解决“chrome提示adobe flash player 已经过期”的小问题
  • Java 通过JDBC连接Mysql数据库
  • 跟我一起写 Makefile(十三)
  • 无向图的结合点
  • CSDN上的文章好像是hBifts的嘛。怎么连作者名字都不提一下。过份!
  • Yii2.0 API实例
  • 关于Whidbey的东西
  • AFURLRequestSerialization
  • top命令简介
  • 竟然发现在windows2003下的搜索工具不能搜索asp文件中的select文字
  • 【css3】浏览器内核及其兼容性
  • Idea+maven+scala构建包并在spark on yarn 运行
  • Java多线程(4):使用线程池执行定时任务
  • JS专题之继承
  • nginx(二):进阶配置介绍--rewrite用法,压缩,https虚拟主机等
  • Redis 中的布隆过滤器
  • Redux 中间件分析
  • Spring Cloud Alibaba迁移指南(一):一行代码从 Hystrix 迁移到 Sentinel
  • 从setTimeout-setInterval看JS线程
  • 第三十一到第三十三天:我是精明的小卖家(一)
  • 对超线程几个不同角度的解释
  • 极限编程 (Extreme Programming) - 发布计划 (Release Planning)
  • 如何合理的规划jvm性能调优
  • 使用阿里云发布分布式网站,开发时候应该注意什么?
  • 数据科学 第 3 章 11 字符串处理
  • elasticsearch-head插件安装
  • 如何在招聘中考核.NET架构师
  • ​批处理文件中的errorlevel用法
  • #免费 苹果M系芯片Macbook电脑MacOS使用Bash脚本写入(读写)NTFS硬盘教程
  • (4)事件处理——(7)简单事件(Simple events)
  • (c语言)strcpy函数用法
  • (超详细)2-YOLOV5改进-添加SimAM注意力机制
  • (二十三)Flask之高频面试点
  • (附源码)springboot家庭装修管理系统 毕业设计 613205
  • (未解决)jmeter报错之“请在微信客户端打开链接”
  • (一)eclipse Dynamic web project 工程目录以及文件路径问题
  • *1 计算机基础和操作系统基础及几大协议
  • *上位机的定义
  • .gitattributes 文件
  • .Net 代码性能 - (1)
  • .NET 设计模式—适配器模式(Adapter Pattern)
  • .NET 应用启用与禁用自动生成绑定重定向 (bindingRedirect),解决不同版本 dll 的依赖问题
  • .Net 应用中使用dot trace进行性能诊断
  • .net安装_还在用第三方安装.NET?Win10自带.NET3.5安装
  • .net遍历html中全部的中文,ASP.NET中遍历页面的所有button控件
  • .NET导入Excel数据
  • .net实现头像缩放截取功能 -----转载自accp教程网
  • ??在JSP中,java和JavaScript如何交互?
  • @Bean, @Component, @Configuration简析
  • @CacheInvalidate(name = “xxx“, key = “#results.![a+b]“,multi = true)是什么意思