使用Python自动在Firefox中下载文件

时间:2011-10-18 17:15:28

标签: python firefox automation pywin32 pywinauto

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

4 个答案:

答案 0 :(得分:1)

您应该调查selenium ide。您可以使用它和Python来自动化大部分的Firefox。那里的论坛应该指出你正确的方向。这个下载问题是持久性的。

祝你好运!

答案 1 :(得分:1)

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

答案 2 :(得分:0)

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

此外,如果您对相关计算机有控制权,则可以在下载弹出窗口中选中“每次都这样做”(或者不管准确的措辞)。也许这足以使工作更简单?

答案 3 :(得分:0)

对于最新的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()调用可以省略。