我一直试图在Python中使用Selenium访问文件上传对话框窗口的元素(输入ID、按钮ID等(,但没有成功。"文件上载"窗口似乎是一个Windows对话框窗口。我已经尝试了发布在这个门户网站上的不同解决方案,但没有任何效果。请协助。附件是文件上传窗口的屏幕截图
网络驱动程序控制浏览器上的远程会话。我们无法使用Web驱动程序修改windows系统文件对话框。
因此,让我用一个可能的解决方案来启发你(它可能不是你想要的,在这种情况下,我们将迭代解决方案(:
要弹出一个文件对话框来上传文件,你可能需要点击下面的html。用人类可读的术语来说,它是一个文件输入字段。
<input type="file">
但实际上,没有必要直接点击它。你只需找到元素,并发送文件的路径即可上传。
pathOfFile = "C:/Users/John/yourPotatoIsTwoPotatoes.png"
element = driver.find_element_by_css_selector("input[type='file']")
element.send_keys(pathOfFile)
我不确定你是否会喜欢将路径名传递给文件输入的想法,所以告诉我我是否已经足够回答了你的问题!