如果遇到d窗一般第一反应就是用switch_to.alter进行识别在进行 *** 作,但是偶尔会遇到使用alter也解决不了的问题,那么我们可以通过PyKeyboad解决
1.安装pywin32
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple pywin32
2.安装PyHoo
从在https://www.lfd.uci.edu/~gohlke/pythonlibs/网址找到对应版本的PyHoo,通过cmd进入到该pyHook的文件夹路径后
pip install pyHook1.5.1cp37cp37mwin_amd64.whl
3.安装PyUserInput
pip install PyUserInput
4.如果还想进行输入 *** 作就要再安装pyperclip
pip install pyperclip
上述都安装好之后进行导入就可以进行 *** 作了
import os,time,pyperclip from selenium import webdriver from pykeyboard import PyKeyboard #创建浏览器对象 ch_dirver=webdriver.Chrome() ch_dirver.get('需要打开的网址') #使窗口进行最大化 ch_dirver.maximize_window() time.sleep(3) #实例化对象 k=PyKeyboard() #输入内容 k.type_string('输入内容') time.sleep(5) #实现回车 *** 作 k.press_key(k.return_key) time.sleep(5) #按TAB键 k.press_key(k.tab_key) time.sleep(5) #进行复制 *** 作 pyperclip.copy('需要复制的内容') #进行CTRL+V *** 作 k.press_key(k.control_key) k.tap_key('v') k.release_key(k.control_key) time.sleep(5) #按下Enter键 k.press_key(k.return_key)
最近也更新了元素API识别方法,顺便说一下
新元素识别方法先导入BY包
from selenium.webdriver.common.by import By
导入包之后可以进行 *** 作
ch_dirver.find_element(By.XPATH,'//标签名[@元素名="元素值"]')
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)