一、基础知识
1、定位网页元素技巧
clear() //清空
send_keys() // 输入
back() //后退页面
maximize_window() // 最大化窗口
click() //点击事件,点击按钮,超链接
submit() //提交表单
根据id查询定位:find_element_by_id
根据name查询定位:find_element_by_name
根据class查询定位:find_element_by_class_name
根据tag name标签定位:find_element_by_tag_name
超链接内容定位:find_element_by_partial_link_text
css定位 元素[属性=值] find_element_by_css_selector 通过拷贝selector
xpath定位 find_element_by_xpath 拷贝full xpath
// 全部的意思,扫描全文
/ 相邻的意思
* 所有元素
. 当前节点
.. 元素的父节点
绝对路径定位:从<html>标签依次往下查找
相对路径:利用元素属性进行xpath定位
二、模拟事件处理
selenium中使用actionchains模拟用户的行为
需求:
模拟鼠标才能完成的操作,比如:单击、双击、点击鼠标右键、拖拽
解决:
selenium提供了控件ActionChains
鼠标和键盘方法列表:
perform() 执行链中的所有动作
click(on_element=None) 单击鼠标左键
context_click(on_element=None) 点击鼠标右键
double_click(on_element=None) 双击鼠标左键
move_to_element(to_element) 鼠标移动到某个元素
ele.send_keys(keys_to_send) 发送某个词到当前焦点的元素
========== 不常用 ==========
click_and_hold(on_element=None) 点击鼠标左键,不松开
release(on_element=None) 在某个元素位置松开鼠标左键
key_down(value, element=None) 按下某个键盘上的键
key_up(value, element=None) 松开某个键
drag_and_drop(source, target) 拖拽到某个元素然后松开
drag_and_drop_by_offset(source, xoffset, yoffset) 拖拽到某个坐标然后松开
move_by_offset(xoffset, yoffset) 鼠标从当前位置移动到某个坐标
move_to_element_with_offset(to_element, xoffset, yoffset) 移动到距某个元素(左上角坐标)多少距离的位置
send_keys_to_element(element, keys_to_send) 发送某个键到指定元素