selenium笔记

1,setup基本设定

def setup(self):

        self.driver = webdriver.Chrome() #选择的浏览器

        self.driver.maximize_window() #最大化窗口

        self.driver.implicitly_wait(5) #隐式等待5s

2,等待方式

直接等待:time.sleep(3)  #强制休眠3s,基本不适用

隐式等待:self.driver.implicitly_wait(5) #可以全局应用,一般写在setup中,可以动态等待5s

显式等待:

action_sign = (By.XPATH, "//*[@text = '等待元素']")
WebDriverWait(self.driver,10).until(expected_conditions.element_to_be_clickable(action_sign)) 
#在特定的情况下需要使用,有些个别位置因为响应速度慢或者网速慢可以使用显式等待等到某个元素出现时,再继续下面的测试操作。

3,web的控件操作

self.find_click(By.XPATH, "//*[@text='查找元素']")#查找网页中文字为“查找元素”的控件

还可以By.ID,By.CSS_SELECTOR,By.CLASS_NAME,By.LINK_TEXT等等方式查询控件

4,鼠标操作

需要调用ActionChains

action = ActionChains(driver)

单击

action.click(element)

右键

action.context_click(element)

双击

action.double_click(element)

移动到某个元素上

action.move_to_element(element)

拖拽一个元素到另一个元素上并放掉

action.long_press(x, y_start, duration).move_to(x1,y_end).release().perform()
或者
action.drag_and_drag(element_drag,element_drop)

删除

action.send_keys(keys.BACK_SPACE)

5,多窗口

获取当前窗口句柄

driver.current_window_handle

获取所有窗口句柄

driver.window_handles

切换窗口

driver.switch_to.window('句柄')

根据id切换frame

driver.switch_to.frame("id")

切换到默认frame

driver.switch_to.default_content()

切换到父级frame

driver.switch_to.parent_frame()

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值