使用Python中的Selenium Webdriver我打开一个网页,然后点击“文件上传”表格(HTML5,它是一个DIV,它不是一个表单HTML元素,但它并不关心很多),问题出现之后单击它,出现“文件打开”窗口并要求提供文件。现在是我想放置文件路径并按下Enter键(或单击“打开”按钮)和AutoIt。
但是我不能用WinActivate这样做,因为看起来像AutoIt找到它但是它不对,因为AutoIt给我的Handle不等于我用AutoIt Window Info工具看到的Handle。
$title = 'Open'
WinActivate($dialogtitle)
If WinActive($dialogtitle) Then
MsgBox(0, "Found", "Window found.")
send("D:\documents\photo.jpg")
Send("{ENTER}")
Else
MsgBox(0, "Not found", "Window not found.")
EndIf
它在Firefox上运行得很完美,但在Chrome和MS Edge上却没有。
这可能会迟到,但这就是我这样做的方式,用窗口上显示的文本更改“打开文件”
import autoit
autoit.win_wait_active("Open File", 5)
autoit.send(path)
autoit.send("{ENTER}")