我如何处理系统 windows with Python on Windows OS?

How do I handle the system windows with Python on Windows OS?

使用 Selenium Webdriver,我必须在网站上上传一些文件,但是由于用于浏览文件位置的弹出 window 是由操作系统而不是浏览器处理的,所以我无法自动执行该部分与硒。

所以我想知道我需要使用哪个框架或模块来处理 Windows OS 的系统 windows。可以为此使用 tkInter 或 wxPython 吗?

我的脚本将用于 Windows 7、8 和 10。

您甚至可以从 Python 调用 autoit3 框架以打开文件打开对话框并填写值,然后按确定或使用 windows 执行任何操作。 Autoit3 有一个 dll,可以使用 ctypes 加载和调用。这就是我在一两个项目中所做的。

如果我没有正确理解你的问题,wxpython 或 tk 将无法帮助你。它们可以用来制作窗口UI,而不是用来控制其他程序。

实际上,您可以上传文件而无需与上传提示弹出窗口进行交互。

为了能够使用 selenium 处理文件上传,您应该将文件路径发送到适当的输入字段 而无需单击 "Upload" 按钮 。尝试以下操作:

path_to_file = 'C:\Files\path\to\file'  # use your specific path instead
driver.find_element_by_xpath('//input[@type="file"]').send_keys(path_to_file)

P.S。如果此代码无法按您预期的那样工作,请告诉我