我需要使用 Python 和 Selenium 上传文件。当我单击上传 HTML 元素时,会打开一个“文件上传”窗口,并且 click() 方法不会返回,因为它等待完全加载页面。因此我无法继续使用 pywinauto 代码来控制窗口。
第一种方法点击 HTML 元素(一个 img)来上传一个新文件:
def add_file(self):
return self.selenium.find_element(By.ID, "add_file").click()
第二种方法是使用 pywinauto 键入文件的路径,然后单击打开
def upload(self):
from pywinauto import application
app = application.Application()
app.connect_(title_re = "File Upload")
app.file_upload.TypeKeys("C:\\Path\\To\\FIle")
app.file_upload.Open.Click()
如何强制 add_file 方法返回并能够运行上传方法?