点击链接查找相关视频教程
.get("XXX") 打开网页
.maximize_window() 最大化打开
.set_window_size(10,20) 设置打开尺寸
.refresh() 刷新
.back() 返回
.forward() 下一页
.find_element_by_id("").send_keys("") 根据ID名查询
.find_element_by_name("").send_keys("") 根据name查询
.find_element_by_id("").click() 根据ID点击按钮
.find_element_by_tag_name("标签").send_keys("") 根据标签查询
.find_elements_by_tag_name("标签")[0].send_keys("") 根据标签数组查询
.find_elements_by_link_text("超链接名称").click() 根据具体超链接名称点击
.find_elements_by_parrial_link_text("不具体超链接名称").click() 根据不具体超链接名称点击
.find_elements_by_xpath("/html/baby/div[1]/div/ul").send_keys("") xpath绝对定位
.find_elements_by_xpath("//input[@id=""]").send_keys("") 利用元素定位
下拉框
.find_element_by_tag_name('option')[1].click() 根据option下标点击
.find_element_by_css_selector('[value="2"]').click() 根据value点击
form selenium.webdriver.support.ui import select
select = Select(driver.find_element_by_css_selector("[name='XXX']"))
select.select_by_index(2) 根据下标
select.select_by_visible_text("XXX") 根据文本内容
select.select_by_value("1") 根据value
鼠标操作
from selenium.webdriver.common.action_chains import ActionChains
driver.find_element_by_css_selector("#kw").send_keys("") 输入
获取搜索框元素对象
element =driver.find_element_by_css_selector("#kw")
双击操作
ActionChains(driver).double_click(element).perform()
右击操作
ActionChains(driver).context_click(element).perform()
鼠标悬停
above=driver.find_element_by_css_selector(".pf")
ActionChains(driver).move_to_element(above).perform()
键盘操作
from selenium.webdriver.common.keys import keys
键盘全选
.find_element_by_css_selector("#kw").send_keys(keys.CONTROL,''a")
键盘操作复制或剪切
.find_element_by_css_selector("#kw").send_keys(keys.CONTROL,''c")
.find_element_by_css_selector("#kw").send_keys(keys.CONTROL,''x")
粘贴复制内容
.find_element_by_css_selector("#kw").send_keys(keys.CONTROL,''v")
元素等待
显示等待是针对某一个元素进行相关等待判定
隐式等待不针对某一个元素进行等待,全局元素等待
引用
WebDriverWait 显示等待针对元素必用
from selenium.webdriver.support.ui import WebDriverWait
expected_conditions 预期条件类 (里面包含方法可以调用,用于显示等待)
from selenium.webdriver.support import expected_conditions as EC
By 用于元素定位
from selenium.webdriver.common.by import by
element=WebDriverWait(driver,最长等待时间,每隔多久去检测一次).until(Ec.presence_of_element_located(By.ID,"su")))
element.click()
NoSuchElementException 用于隐式等待抛出异常
from selenium.common.exceptions import NoSuchElementException
.implicitly_wait(5) 隐式等待时间设定5秒
try:
print(ctime())
.find_element_by_css_selector("#kw").send_kets("XXX")
.find_element_by_css_selector("#su").click()
except NoSuchElementException as msg
print(msg)
finally:
print(ctime())
frame嵌套页面元素定位
.switch_to.frame(0) 用frame的index来定位,第一个是0
.switch_to.frame("frame1") 用id来定位
.switch_to.frame("myframe")用name来定位