【问题标题】:Automate downloading a file in Firefox using Python使用 Python 在 Firefox 中自动下载文件
【发布时间】:2011-10-18 17:15:28
【问题描述】:

我正在研究 pywinauto 和 pywin32。我想编写一个脚本来自动在 Firefox 中下载文件。在 Firefox 中下载文件时,它会显示一个弹出窗口,要求您打开或保存文件,您必须选择一个选项并按照步骤操作。如何使用 pywinauto 或 pywin32 在此弹出窗口中定位控件(项目)?

【问题讨论】:

    标签: python firefox automation pywin32 pywinauto


    【解决方案1】:

    您应该调查selenium ide。您可以使用它和 Python 来自动化大部分 Firefox。那里的论坛应该为您指明正确的方向。这个下载问题是一个长期存在的问题。

    祝你好运!

    【讨论】:

      【解决方案2】:

      pywinauto 安装有一个与此相关的示例(SaveFromFirefox.py): http://pywinauto.googlecode.com/hg/pywinauto/docs/getting_started.html

      【讨论】:

        【解决方案3】:

        您可以查看麻省理工学院的Project SIKULI。有了它,您可以通过截屏来编写宏。项目截图使整个过程看起来很容易。它也是基于 Python 的,所以它可能是这项工作的编写工具。

        此外,如果您可以控制相关计算机,则可以选中下载弹出窗口中显示“每次都执行此操作”的复选框(或任何确切的措辞)。也许这足以让工作变得更简单?

        【讨论】:

          【解决方案4】:

          对于最新的 Firefox 版本,您可以使用pywinauto 0.5.x(只需下载并运行python setup.py install 或运行pip install pywinauto)。 SaveFromFirefox.py 适用于 Win7。

          有用的提示:

          • app.Dialog.PrintControlIdentifiers() 将打印对话框上控件的所有可能访问名称。
          • SWAPY 是用于 pywinauto 控件层次结构检查和代码生成的 GUI 助手。
          • app.Dialog.ControlName.WrapperObject(). ... 将为您提供可用于控件的最有用的方法列表。在生产代码中,可以省略 WrapperObject() 调用。

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 2016-08-12
            • 2020-02-24
            • 2022-01-06
            • 1970-01-01
            • 2014-07-11
            • 1970-01-01
            • 2013-09-16
            • 1970-01-01
            相关资源
            最近更新 更多