1

我正在寻找能够允许与其他程序交互的 Python 3.x 库。例如,我已经有某种我用 python 开发的命令行界面,我希望能够输入“1”,然后打开另一个程序。从这里,我希望点击另一个输入,如“2”并让它操纵打开的 GUI(例如,让它“单击”配置下拉栏并选择一个选项,也许修改一些设置,应用,然后也可能会自动输入一些文本)。我这样做的原因是为了测试自动化。我已经尝试过使用 pywinauto,但我发现它与 Python 3 不兼容!:( 还有其他可能的方法吗?提前谢谢!!! PS我可能忘了提到我'

4

4 回答 4

2

你可以看看sikuli。它使您可以根据区域或匹配的图形自动执行点击和其他操作。相当聪明。您是否有理由坚持使用 py3?

于 2013-07-23T20:10:27.690 回答
0

兼容 Py3 的 pywinauto 发布!新主页: http: //pywinauto.github.io/

PS我是pywinauto的维护者。

于 2015-05-29T05:09:39.540 回答
0

迟到的答案,但看看pyautogui它使您能够移动鼠标和按键。我将它用于以下代码段,该代码段启动模拟器并按键。

import pyautogui as pg
import os
import time

game_filepath = "../games/BalloonFight.zip"
os.system(f"fceux {game_filepath} &")

time.sleep(1)

keys_to_press = ['s', 's', 'enter']

for key_to_press in keys_to_press:
    pg.keyDown(key_to_press)
    pg.keyUp(key_to_press)

time.sleep(2)

im = pg.screenshot("./test.png", region=(0,0, 300, 400))
print(im)

可以在这里找到更详细的解释:强化学习玩 Nintendo NES 游戏

于 2021-06-04T21:17:47.520 回答
-2

我在 GitHub 上创建了一个与 Python 3 兼容的 pywinauto fork: https ://github.com/Usonaki/sendkeys-py-si-python3

我只做了基本的测试,所以可能还有一些我没有发现的循环导入相关的问题。

于 2015-03-08T03:49:07.390 回答