Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/303.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何创建Python脚本以自动化软件安装?_Python_Automation_Installation - Fatal编程技术网

如何创建Python脚本以自动化软件安装?

如何创建Python脚本以自动化软件安装?,python,automation,installation,Python,Automation,Installation,我想自动化软件安装过程。情况如下: 运行安装文件。在第一个屏幕上有两个按钮,然后是“取消”。单击next(下一步)进入下一个屏幕,屏幕上有两个按钮,next(下一步)、cancel(取消),需要一些输入数据。提供详细信息后,将显示完成或取消按钮 我想写一个Python脚本来自动化这个活动。它应该识别按钮并单击它。它应该在需要的地方输入数据并完成安装。要实现此功能,请执行以下操作: 是否需要Python API(如果有) 一些代码示例或教程的链接使用相同的 供参考的样本图像: 正如Rawing所提

我想自动化软件安装过程。情况如下:

运行安装文件。在第一个屏幕上有两个按钮,然后是“取消”。单击next(下一步)进入下一个屏幕,屏幕上有两个按钮,next(下一步)、cancel(取消),需要一些输入数据。提供详细信息后,将显示完成或取消按钮

我想写一个Python脚本来自动化这个活动。它应该识别按钮并单击它。它应该在需要的地方输入数据并完成安装。要实现此功能,请执行以下操作:

  • 是否需要Python API(如果有)
  • 一些代码示例或教程的链接使用相同的
  • 供参考的样本图像:


    正如Rawing所提到的,pywinauto是Windows installer的好选择。这是一个很好的示例视频:

    要等待下一页,请使用以下内容:
    app.WizardPageTitle.wait('ready')

    安装程序完成时:
    app.FinishPage.wait\u not('visible')

    对于编辑框输入:
    app.WizardPage.edit.type_键('some input path',带_spaces=True)

    对于按钮点击,我推荐
    点击输入()
    作为更可靠的方法。

    如果您想在许多机器上自动安装应用程序,可以创建远程桌面或VNC会话,并在该会话中运行Python脚本的本地副本。只是不要最小化RDP或VNC窗口以防止GUI上下文丢失。失去焦点是安全的,您可以在另一个窗口中继续在主机上工作,而不会影响远程安装。


    FastStone Image Viewer 4.6的简易安装脚本示例:

    import os
    from pywinauto.application import Application
    
    fsv = Application(backend="win32").start("FSViewerSetup46.exe")
    
    fsv.InstallDialog.NextButton.wait('ready', timeout=30).click_input()
    fsv.InstallDialog.IAgreeRadioButton.wait('ready', timeout=30).click_input()
    fsv.InstallDialog.Edit.Wait('ready', timeout=30).type_keys(os.getcwd() + "\FastStone Image Viewer", with_spaces=True)
    fsv.InstallDialog.InstallButton.wait('ready', timeout=30).click_input()
    fsv.InstallDialog.FinishButton.wait('ready', timeout=30).click_input()
    

    你想让python在图形安装程序中导航,还是想用python制作一个图形安装程序?嘿,第一个选项,python导航GUI安装程序。我自己从来没有用过它,但你可以看看。我也想要一个linux解决方案,这确实让wget extraction等感谢你!真是帮了大忙。这解决了Windows环境的用途。如果您能告诉我Linux环境下的类似库,那就太好了。它使用AT SPI技术。我不熟悉。现在AT-SPI正在进行这项工作:尽管我预计它将在2019年完成。您如何处理windows的用户帐户控制弹出窗口?有办法等待吗?@VasilyRyabov我可以绕过它,以管理员身份执行脚本