python+selenium 基本API总结(二)

"29.模拟键盘单个按键/组合按键操作,"
import time
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
url="https://www.sogou.com"
driver=webdriver.Chrome()
driver.get(url)
driver.find_element_by_id("query").send_keys("自动")
# 删除多输入的一个 动
driver.find_element_by_id("query").send_keys(Keys.BACK_SPACE)
time.sleep(3)
# 输入空格键+“动化”
driver.find_element_by_id("query").send_keys(Keys.SPACE)
driver.find_element_by_id("query").send_keys("动化")
time.sleep(3)
# ctrl+a 全选输入框内容
driver.find_element_by_id("query").send_keys(Keys.CONTROL, 'a')
time.sleep(3)
# ctrl+x 剪切输入框内容
driver.find_element_by_id("query").send_keys(Keys.CONTROL, 'x')
time.sleep(3)
# ctrl+v 粘贴内容到输入框
driver.find_element_by_id("query").send_keys(Keys.CONTROL, 'v')
time.sleep(3)
# 点击键盘向下箭头
driver.find_element_by_id("query").send_keys(Keys.ARROW_DOWN)
time.sleep(3)
driver.find_element_by_id("query").send_keys(Keys.ARROW_DOWN)
# 通过回车键来代替单击操作
driver.find_element_by_id("query").send_keys(Keys.ENTER)


"30.模拟组合按键操作,"

"""第一种方式,设置并读取剪切板,键盘按下;键盘释放"""
from selenium.webdriver.common.keys import Keys
from selenium import webdriver
from selenium.webdriver import ActionChains
import win32con
import win32clipboard as w
import time
import win32api

def setText(sourceStr):
    "设置剪切板内容"
    w.OpenClipboard()
    w.EmptyClipboard()
    w.SetClipboardData(win32con.CF_UNICODETEXT,sourceStr)
    w.CloseClipboard()

def getText():
    "读取剪切板内容"
    w.OpenClipboard()
    content=w.GetClipboardData(win32con.CF_TEXT)
    w.CloseClipboard()
    return content

VK_CODE={"enter":0x0D,"ctrl":0x11,"a":0x41,"v":0x56,"x":0x58}

def keyDown(keyName):
    "键盘键按下"
    win32api.keybd_event(VK_CODE[keyName],0,0,0)

def keyUp(keyName):
    "键盘键抬起"
    win32api.keybd_event(VK_CODE[keyName],0,win32con.KEYEVENTF_KEYUP,0)

# 程序代码:先将要剪切的内容设置到剪切板中,然后再剪切出来,粘贴;
url="http:www.sogou.com"
driver=webdriver.Chrome()
driver.get(url)
# 定义即将要被设置到剪切板中的内容
content="测试之路"
# 将content变量中的内容设置到剪切板中
setText(content)
# 从剪切板中读取设置到剪切板中的内容
getText=getText()

driver.find_element_by_id('query').click()
# 按下Ctrl+v组合键
keyDown("ctrl")
keyDown("v")
# 释放Ctrl+v组合键
keyUp("ctrl")
keyUp("v")

time.sleep(2)
driver.find_element_by_id("stb").click()
# 或者:
# 全选
keyDown("ctrl")
keyDown("a")
keyUp("ctrl")
keyUp("a")
# 剪切
keyDown("ctrl")
keyDown("x")
keyUp("ctrl")
keyUp("x")
# 粘贴
keyDown("ctrl")
keyDown("v")
keyUp("ctrl")
keyUp("v")

"""第二种方式:全选、剪切、复制"""

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

url="http://www.sogou.com"
driver=webdriver.Chrome()
driver.get(url)
driver.find_element_by_id("query").send_keys("测试开发")
# 全选
ActionChains(driver).key_down(Keys.CONTROL).send_keys("a").k
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值