【发布时间】:2018-04-14 23:22:12
【问题描述】:
我想将从 python 加载的一些文本粘贴到浏览器字段中:
将某些内容加载到剪贴板的任何方法,然后我可以使用 Ctrl+V 粘贴。目前我看到 pyperclip.paste() 只将文本粘贴到控制台中,而不是我想要的位置。运行pyperclip.copy('sometext') 后按 Ctrl+V 没有任何作用。
import pyautogui
import pyperclip
def click():
try:
pyautogui.click()
except:
pass
pyperclip.copy('sometext')
pyautogui.moveTo(4796, 714)
click()
pyperclip.paste()
pyautogui.hotkey('ctrl', 'v', interval = 0.15)
我在这里做错了什么?另一种方法与修复一样受欢迎 - 最好避免使用pyautogui.typewrite(),因为大量文本需要很长时间
更新:似乎是pyperclip.copy('sometext') 没有将'sometext' 放入或覆盖到剪贴板的问题。 pyperclip paste 功能正常工作,pyautogui Ctrl+V
【问题讨论】:
-
pyperclip.paste()只是将当前剪贴板内容作为字符串返回 - 它对任何应用程序都没有影响。模拟 Ctrl-V 应该可以工作 - 也许您只是在复制后需要更多延迟,让浏览器进入准备接受粘贴的状态? -
刚刚检查过,看起来
pyperclip.copy('sometext')没有将文本加载到剪贴板中。我单独运行该行,然后等待一段时间,然后手动按 Ctrl+V。粘贴的是我不久前复制的内容,而不是“sometext”
标签: python clipboard pyautogui pyperclip