Переношу проект с одной версии программы на другую, т.к. импорт невозможен, использую копипаст объектов. Есть рутинная задача по копированию названий объектов, в корне проекта их нет, поэтому копировать название возможно только тыкая по экрану в чём python мне и помог.
Вот такой код
import keyboard
import threading
import time
import pyautogui
#import pyautogui - координаты мышки
#pyautogui.displayMousePosition()
def exit_on_esc():
while True:
if keyboard.is_pressed('esc'):
exit(1)
def main():
#задержка перед началом работы скрипта
time.sleep(10)
#находимся на первом проекте
#определяем количество повторений
repetitions = 6
for i in range(repetitions):
# нажимаем F2, чтобы выделить название объекта
pyautogui.moveTo(133, 819) # координаты первого объекта
pyautogui.click()
pyautogui.press('down', presses=i)
pyautogui.press('f2')
#копируем название в буфер обмена
pyautogui.hotkey('ctrl', 'c')
#переключаемся на второй проект
pyautogui.hotkey('alt', 'tab')
# вводим новое название объекта
pyautogui.moveTo(133, 772)
pyautogui.click()
pyautogui.press('down', presses=i)
pyautogui.press('f2')
pyautogui.hotkey('ctrl', 'v')
pyautogui.press('enter')
# переключаемся на первый проект
pyautogui.hotkey('alt', 'tab')
if __name__ == "__main__":
# Запуск потока с отлавливанием нажатия ESC
exit_thread = threading.Thread(target=exit_on_esc)
exit_thread.start()
# Запуск основного потока
main_thread = threading.Thread(target=main)
main_thread.start()
#скрипт выполнен!
Все хорошо работает, но каждый раз приходиться в ручную забивать координаты сначала одного экрана с первым проектом, затем второго со вторым. Может кто-то помочь чтобы координаты как-то сами определялись после первого нажатия на один объект и затем на второй, а потом чтобы всё запускалось?