"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
python+selenium 基本API总结(二)
最新推荐文章于 2023-12-11 08:00:00 发布