Когда я пытаюсь имитировать сочетание клавиш Ctrl+C внутри цикла используя pyautogui, первое, что я копирую, — это содержимое буфера обмена, а не обновленное содержимое. Я проверил чтение из буфера обмена вручную, и оно работает нормально, но проблема, похоже, заключается в том, что смоделированное сочетание клавиш Ctrl+C фактически не копирует новое содержимое в буфер обмена на каждой итерации.
Вот упрощенная версия моего кода:
Код: Выделить всё
from tkinter import Tk
import pyautogui # Used to simulate keyboard inputs
for i in range(3):
pyautogui.hotkey('ctrl', 'c') # Simulate copying current selection to clipboard
# Create an instance of Tk to access clipboard content
root = Tk()
root.withdraw() # Hide the Tk window
clipboard_content = root.clipboard_get() # Read clipboard contents
root.destroy() # Destroy the Tk instance after reading clipboard
# Process the clipboard content
operation = clipboard_content.split("+")
operation = [i.replace('\r\n', '') for i in operation]
result = str(int(operation[0]) + int(operation[1])) # Perform addition
# Simulate typing the result
for i in range(len(result)):
digit = result[abs(len(result) - i - 1)]
pyautogui.press(digit)
print(digit)
Я запускаю код из VS Code , и я гарантировал, что выделение текста меняется между итерациями.
Как обеспечить правильное обновление содержимого буфера обмена после каждой симуляции Ctrl+C внутри цикла?
Подробнее здесь: https://stackoverflow.com/questions/792 ... ide-a-loop
Мобильная версия