什么是Python中pywinauto的Node.js相当物?

2024-10-04 01:32:09 发布

您现在位置:Python中文网/ 问答频道 /正文

我有许多用python编写的脚本,它们使用pywinauto库。这些脚本是在Windows上打开程序,在其中做事情,等等。现在我已经开始学习了节点.js,我到目前为止才发现机器人.js,这当然是有希望的,但缺乏像pywinauto那样深入细节的能力。你知道吗

例如,假设我想定位一个名为“Wordperfect”的程序,如果它打开或不打开,那么杀死该程序并重新打开它。下面是我使用pywinauto在python中如何做到这一点:

from pywinauto import Desktop, Application

# Starts Wordperfect
wp_open = "wpwin14.exe" in (p.name() for p in psutil.process_iter())

if wp_open == False: # detects Wordperfect is closed
    app = Application().start(cmd_line=u'"C:\\Program Files (x86)\\Corel\\WordPerfect Office X4\\Programs\\wpwin14.exe" ')

if wp_open == True: # detects Wordperfect is open
    app = Application().connect(class_name='WordPerfect.14.00') # title=u'WordPerfect X4 - Document1 (unmodified)', 
    wordperfect = app[u'WordPerfect.14.00']
    # Kills Wordperfect
    app.Kill_() 
    # Reopens Wordperfect
    app = Application().start(cmd_line=u'"C:\\Program Files (x86)\\Corel\\WordPerfect Office X4\\Programs\\wpwin14.exe" ')

这只是我剧本的开始。从这里开始变得更加复杂。不幸的是,到目前为止,我还没有找到一个具体的方法来做到这一点节点.js. 有人能告诉我有没有,怎么做吗?我一直在网上查child-process节点.js但是从我在示例中看到的情况来看,不清楚如何在上面的python中重新创建我所拥有的东西。你知道吗


Tags: in程序脚本app节点applicationjsopen