模板建站和自助建站,云南网站建设公司前十名,国家企业信用公示信息网,wordpress主题siren在前面的文章中重点介绍了一些元素的定位方法#xff0c;定位到元素后#xff0c;就需要操作元素了。本篇总结了web页面常用的一些操作元素方法#xff0c;可以统称为行为事件。
一、简单操作
点击按钮#xff08;鼠标左键#xff09;#xff1a;click()清空输入框定位到元素后就需要操作元素了。本篇总结了web页面常用的一些操作元素方法可以统称为行为事件。
一、简单操作
点击按钮鼠标左键click()清空输入框clear()输入字符串send_keys(xxx)获取属性值get_attribute(attr)获取标签中的文本内容text判断元素是否显示出来is_displayed()窗口最大化driver.maximize_window()
from selenium import webdriverdriver webdriver.Chrome()
driver.get(https://www.baidu.com)print(driver.find_element(xpath, //*[ids-top-left]/a[2]).text)
driver.find_element(id, kw).clear()
driver.find_element(id, kw).send_keys(selenium)
driver.find_element(id, su).click()
print(driver.find_element(id, kw).get_attribute(value))
print(driver.find_element(id, kw).is_displayed())driver.quit()
二、submit提交表单 在百度搜索框输入关键字后可以直接按回车键搜索也可以点搜索按钮搜索。submit()一般用于模拟回车键。
from selenium import webdriverdriver webdriver.Chrome()
driver.get(https://www.baidu.com)driver.find_element(id, kw).clear()
driver.find_element(id, kw).send_keys(selenium)
driver.find_element(id, kw).submit()
三、键盘操作
1模拟键盘enter键 键盘操作需要先导入如下模块from selenium.webdriver.common.keys import Keys然后使用send_keys(Keys.ENTER)模拟enter键。
from selenium import webdriver
from selenium.webdriver.common.keys import Keysdriver webdriver.Chrome()
driver.get(https://www.baidu.com)driver.find_element(id, kw).clear()
driver.find_element(id, kw).send_keys(selenium)
# 模拟键盘enter键
driver.find_element(id, kw).send_keys(Keys.ENTER)driver.quit()
2其他常见的键盘操作
键盘F1到F12send_keys(Keys.F1)把F1改成对应的快捷键。复制CtrlCsend_keys(Keys.CONTROL, c) 粘贴CtrlVsend_keys(Keys.CONTROL, v) 全选CtrlAsend_keys(Keys.CONTROL, a) 剪切CtrlXsend_keys(Keys.CONTROL, x) 制表键Tab: send_keys(Keys.TAB)
四、鼠标操作 鼠标不仅可以点击(click)还可执行其他操作比如将鼠标悬停在某个元素上、鼠标右击等。
1鼠标悬停操作 鼠标操作需要先导入如下模块from selenium.webdriver.common.action_chains import ActionChains然后使用move_to_element()实现鼠标悬停最后使用perform()执行ActionChains中所有行为。这里以百度页面设置按钮为例。 from selenium import webdriver
from selenium.webdriver.common.action_chains import ActionChainsdriver webdriver.Chrome()
driver.get(https://www.baidu.com)ele driver.find_element(xpath, //*[ids-usersetting-top])
ActionChains(driver).move_to_element(ele).perform()driver.quit()
2鼠标其他操作
右击鼠标context_click()双击鼠标double_click()
五、定位悬浮菜单 通过ajax获取的下拉菜单中的元素对象也可以进行定位比如百度搜素提示 from selenium import webdriver
import timedriver webdriver.Chrome()
driver.get(https://www.baidu.com)driver.find_element(id, kw).send_keys(py)
time.sleep(1)
# 定位悬浮菜单
menus driver.find_elements(css selector, .bdsug-overflow.c-line-clamp1)for i in menus:print(i.text)menus[3].click()