• Python3+Selenium3+webdriver学习笔记5(模拟常用键盘和鼠标事件)


    #!/usr/bin/env python
    # -*- coding:utf-8 -*-

    from selenium import webdriver
    from selenium.webdriver.common.keys import Keys
    from selenium.webdriver.common.action_chains import ActionChains

    import time,os

    # about:addons 火狐浏览器安装组件,访问的地址

    # <input id="kw" name="wd" class="s_ipt" value="" maxlength="255" autocomplete="off">
    # <input type="submit" value="百度一下" id="su" class="btn self-btn bg s_btn">
    #id
    keys="selenium自动化"
    delay=3
    url="https://www.baidu.com/"
    driver=webdriver.Firefox()

    driver.get(url)

    #等待delay秒
    driver.implicitly_wait(delay)

    #输入字符串
    driver.find_element_by_id("kw").send_keys(keys)

    #清空输入的内容
    driver.find_element_by_id("kw").clear()

    #鼠标左键点击
    driver.find_element_by_id("su").click()

    driver.find_element_by_id("kw").send_keys(keys)

    #模拟回车提交表单
    driver.find_element_by_id("kw").submit()

    driver.find_element_by_id("kw").send_keys(Keys.ENTER)

    #复制 粘贴 全选 剪切 制表键 f11~f12
    driver.find_element_by_id("kw").send_keys(keys,Keys.CONTROL,'c')

    driver.find_element_by_id("kw").send_keys(keys,Keys.CONTROL,'v')

    driver.find_element_by_id("kw").send_keys(keys,Keys.CONTROL,'a')

    driver.find_element_by_id("kw").send_keys(keys,Keys.CONTROL,'x')

    driver.find_element_by_id("kw").send_keys(Keys.TAB)

    driver.find_element_by_id("kw").send_keys(Keys.F1)

    #执行ActionChains中的所有行为
    source=driver.find_element_by_link_text("设置")
    target=driver.find_element_by_link_text("新闻")

    # 鼠标悬停
    ActionChains(driver).move_to_element(source).perform()

    # 右击鼠标
    ActionChains(driver).context_click(source).perform()

    # 双击鼠标
    ActionChains(driver).double_click(source).perform()

    #鼠标移动到另一个位置
    ActionChains(driver).drag_and_drop(source,target).perform()

    # 鼠标左键
    ActionChains(driver).click_and_hold(source).perform()


    #等待delay秒
    time.sleep(delay)

    driver.quit()


  • 相关阅读:
    常见业务指标
    1006 换个格式输出整数 (Python)
    1004 成绩排名 (Python)
    1003 我要通过! (Python)
    1008 数组元素循环右移问题 (Python)
    如何使用SSH秘钥链接Github
    在windows下如何正确安装curses模块
    面向数据结构C基础知识点(个人向)
    用Python实现链式调用
    python重点串讲
  • 原文地址:https://www.cnblogs.com/NiceTime/p/10063376.html
Copyright © 2020-2023  润新知