selenium+python自动化笔记之一

一、webdriver的API与定位元素

元素定位核心部分
元素名称 webdriver API 说明
id find_element_by_id() id定位
name find_element_by_name() name定位
class name find_element_by_class_name() class_name定位
tag name find_element_by_tag_name()  
link text find_element_by_link_text() 精准定位
partial link text find_element_by_partial_link_text() 模糊定位
xpath find_element_by_xpath() xpath定位
css selector find_element_by_css_selector() css定位

 

 

 

 

 

 

 

 

 

 

元素操作方法
方法 说明
clear 清除元素内容
send_keys 模拟按键输入
click 点击
submit 提交表单

 

 

 

 

 

 

 

二、使用xpath定位元素

    1:XML路径语言:用来确定XML文档中某部分位置的语言;

     2:XPath用于在XML文档中通过元素和属性进行导航

     3:XPath是一个W3C标准

     4:对xml/html有一定的了解

表达式 结果
/xxx 选取根节点xxx
/xxx/yyy 根据绝对路径选择元素
//xxx 整个文档扫描,找到所有xxx元素
//xxx/yyy 所有父元素为xxx的yyy元素
. 选取当前节点的父元素节点
.. 选取父元素地址
//xxx[@id] 选取所有xxx元素中有id属性的元素
//xxx[@id=yyy] 选取所有xxx元素id属性为yyy的元素

 

 

 

 

 

 

 

 

 

 

 

表达式 结果
//*[count(xxx)=2] 统计xxx元素个数=2的节点
//*[local-name()='xxx'] 找到tag为xxx的元素
//*[starts-with(local-name(),'x')] 找到所有tag以x开头的元素
//*[contains(local-name(),'x')] 找到所有tag包含x的元素
//*[string-length(local-name())=3] 找到所有tag长度为3的元素
//xxx|//yyy 多个路径查找

 

 

 

 

 

 

 

 

 

 

三、鼠标和键盘事件

       ActionChains类与输入事件

      1:from selenium.webdriver.common.action_chains import ActionChains

      2:ActionChains(driver):用于生成模拟用户行为

      3:perform():执行存储行为

鼠标事件
表达式 说明
context_click 右击事件
double_click 双击事件
drag_and_drop 拖动
move_to_element() 鼠标停留在一个元素上
click_and_hold 按下鼠标左键在一个元素上

 

 

 

 

 

 

 

 

键盘事件:send_keys()
from selenium.webdriver.common.keys import Keys
表达式 说明
send_kyes(Kyes.BACK_SPACE) 退格键
send_kyes(Kyes.CONTRL.'a') 全选
send_kyes(Kyes.CONTRL.'v') 粘贴
send_kyes(Kyes.CONTRL.'c') 复制
send_kyes(Kyes.CONTRL.'x') 剪切
send_kyes(Kyes.ENTER) 回车
posted @ 2018-01-24 18:00  LancyWu  阅读(340)  评论(0编辑  收藏  举报