Как отправить скопированный текст в текстовый файл, используя pywinauto? - PullRequest
1 голос
/ 07 апреля 2020

Я скопировал текст из моего программного обеспечения, используя pywinauto. К сожалению, я не знаю, как вставить это в текстовый файл. Ниже приведен код, который я написал:

Последняя строка кода работает не так, как должна. Тем не менее, это то, что я должен сделать. Может кто-нибудь помочь мне решить эту проблему?

pywinauto.mouse.double_click(button='left', coords=(820,168))
pywinauto.keyboard.send_keys('^c')
f= open("trial.txt","w+")
f.write(pywinauto.keyboard.send_keys('^v'))```

Ответы [ 2 ]

1 голос
/ 07 апреля 2020

Я вижу, что вы пытаетесь вставить содержимое буфера обмена, но нет визуальной области для вставки.

f.write() будет принимать текст через переменную или, передавая некоторый текст. Вызов Ctrl + V - это операция GUI, которая не может заменить текст в f.write()

Вы можете использовать pyperclip модуль для доступа к содержимому буфера обмена.

import pyperclip
"""yourcode"""
f.write(pyperclip.paste())
f.close()

Вы также можете программно скопировать что-либо в системный буфер обмена с помощью pyperclip.

pyperclip.copy("This is a text copied to clipboard from Python script!!")

Теперь вы можете проверить содержимое, вызвав Ctrl + V в некоторых GUI приложениях, таких как блокнот.

0 голосов
/ 07 апреля 2020

Вы можете попробовать отправить его hotkey

pyautogui.hotkey('ctrl','v')
...