工具安装:

1.安装python

2.安装selenium库(dos命令下进入selenium-2.53.2存放路径,执行pip install selenium-2.53.2)

3.将浏览器驱动放到python安装文件夹中,且存放路径一定是配置环境变量path路径中

4.安装pycharm工具

5.设置pycharm工具

一:定位八种方法

例如:

二:常见的webdriver方法

1.浏览器相关:(打开浏览器先导入webdriver模块)

(1)set_window_size(480,800)调整浏览器宽高大小

(2)maximize_window()浏览器最大化

(3)back()向后

(4)forward()向前

(5)refresh()刷新

(6)close()关闭当前浏览器

(7)quit()关闭所有浏览器

(8)js = "window.scrollto(300,200)"   #300表示左边距,200表示上边距

(9)浏览器属性(句柄)

current_window_handle  当前页面的句柄

window_handles  当前所有的句柄

(10)switch_to_window()   切换窗口(一般通过句柄切换)

2.文本按钮操作相关:

(1)send_keys()输入文本

(2)clear()清除文本

(3)click()点击按钮

(4)submit()类似输入文本后回车

(5)size返回元素的尺寸

(6)text获取文本

(7)get_attribute(type)获取属性值

3.鼠标相关

(1)context_click()右击

(2)double_click()双击

(3)drag_and_drop()拖动

(4)move_to_element()鼠标悬停

(5)perform()执行

4.等待相关

(1)implicitly_wait()隐式等待,灵活性好

(2)time.sleep()等待

5.复选框相关

6.下拉框处理

(1)select模块定位

from selenium.webdriver.support.select import Select

#导入select模块

Select提供了三种选择方法:

select_by_index(index) ——通过选项的顺序,第一个为 0

select_by_value(value) ——通过value属性

select_by_visible_text(text) ——通过选项可见文本

Select提供了四种方法取消选择:(只能取消选择多选选项)

deselect_by_index(index)

deselect_by_value(value)

deselect_by_visible_text(text)

deselect_all()

(2)二次定位(基本思路,先定位 select 框,再定位 select 里的选项)

7.iframe相关

(1)switch_to.frame()选择一个frame---只能用id或name定位frame

(2)假如iframe没有可定位的id或name那么可以通过xpath先定位到iframe,再将对象传给switch_to.frame():如下

iframe_xpath=driver.find_element_by_xpath('//*[@class="if"]')

driver.switch_to.frame(iframe_xpath)

.......

(3)switch_to.default_content()取消选择一个frame(跳回最外层的页面)

switch_to.parent _content()取消选择一个frame(跳出当前frame)

8.弹窗相关

(1)switch_to_alert().accept() #确定

(2)switch_to_alert().dismiss() #取消

(3)browser.switch_to_alert().text #获取弹框信息

9.调用selenium下的by库里的By模块

(1)先导库:from selenium.webdriver.common.by import By

(2)再定位元素:driver.find_element(By.ID,'kw')

10.数据精度调整,保留小数位数

最新文章

  1. classpath: 和classpath*:的区别
  2. [Algorithm Basics] Sorting, LinkedList
  3. 4 BOM编程
  4. Windows删除大文件
  5. jquery几个常用的demo
  6. sql server数据库区分大小写设置
  7. 如何不屏蔽Android系统的返回按键
  8. fb27a9aeaf604597826718c467cc9f4f 为什么我老收到这个
  9. Tomcat configuration DataSource
  10. C++购书系统
  11. JavaEEspring整理
  12. 解决selenium.common.exceptions.WebDriverException: Message: 'chromedriver' executable needs to be in PATH. Please see https://sites.google.com/a/chromium.org/chromedriver/home
  13. scanf函数(初学者)
  14. log buffer space等待事件
  15. N76E003之SPI
  16. 06: linux中find查找命令总结
  17. 微信QQ的二维码登录原理js代码解析
  18. (3)-JSONObject的过滤设置
  19. VS2012项目中使用CocoStudio相关文件的设置
  20. CentOS 7运维管理笔记(9)----Apache 安全控制与认证

热门文章

  1. 最佳内存缓存框架Caffeine
  2. 数据库高级:SQL-CREATE-DATABASE语句
  3. 2019年研究生数学建模D题《汽车行驶工况构建》解析
  4. node项目的基本目录结构
  5. el-table合并行并自定义某一列或几列
  6. Android Studio [Activity的生命周期]
  7. Flask学习之旅--用 Python + Flask 制作一个简单的验证码系统
  8. Spring boot 梳理 - Spring boot自动注册DispatcherServlet
  9. android实现emoji输入
  10. springboot 获取Resource目录下的文件