应用场景中需要从case文件中不断读取文本赋值给textarea,使用 元素.send_keys() 方法可以执行成功但是输入速度会原来越慢,特别是在文本内容过长的情况下,逐个输入着实让人着急。
后来通过复制粘贴的方法,执行速度会大大加快,需要注意的是光标需要定位在需要粘贴的位置上,且执行过程中不能随意切换窗口否则会粘贴在聚焦的地方。
mac环境下Python+Selenium关键代码如下:
from pykeyboard import PyKeyboard
import pyperclip #先安装pyperclip模块(pip install pyperclip)
def test(self):
k = PyKeyboard()
pyperclip.copy("文本内容") #在剪切板中插入需要粘贴的文本内容
k.press_keys(['Command','V'])#控制键盘粘贴文本
time.sleep(2)