使用AutoIt Python将数据发送到窗口

时间:2016-05-13 09:07:12

标签: python selenium selenium-webdriver autoit

我正在使用Selenium和AutoIT将图像上传到网站。 现在我需要从Firefox的“文件上传”窗口中选择一个文件,然后单击Enter。 所以这是代码的AutoIT部分:

driver.find_element_by_xpath("/html/body/div[2]/div/div[2]/div/div/ul[1]/li/button").click()
    autoit.win_wait_active("File Upload", 5)
    autoit.send(os.path.join(mpath,"1.jpg"))
    autoit.send("{ENTER}")

这个脚本运行正常 现在的问题是Window需要在我的计算机上处​​于活动状态才能上传文件,因此在脚本运行时我无法执行任何其他工作。 如何在不激活窗口的情况下发送相同的数据?

1 个答案:

答案 0 :(得分:1)

改为使用:

    autoit.win_wait("[CLASS:#32770;TITLE:Open]", 60)
    autoit.control_send("[CLASS:#32770;TITLE:Open]", "Edit1", os.path.join(mpath,"1.jpg"))
    autoit.control_click("[CLASS:#32770;TITLE:Open]", "Button1")