使用Python处理Mozilla中的弹出窗口

时间:2014-10-27 05:39:16

标签: python windows selenium

我为我的兄弟创建了一个脚本,可以自动登录到他的大学帐户,下载他的日历文件,然后将其上传到Google日历,因为他使用的是什么。我一直在点击"浏览"当Google日历提示我选择要导入的.ics文件时,但当浏览器窗口出现选择文件时(我认为是Windows常用对话框),python代码类似于暂停',因为它停止直到该窗口关闭才能运行。这就是我的意思:

browse = driver.find_element_by_css_selector('.gc-dialoginput') 
browse.click() #Using Selenium here, this is the click that opens up that pop-up 'File Upload' Window

"""The showing of notepad here is just to see when this code would run. 
I have it minimized to see if ShowWindow works, and it does after the pop-up is closed"""

hwnd = win32gui.FindWindowEx(0, 0, 0, "Untitled - Notepad") 

win32gui.ShowWindow(hwnd, win32con.SW_SHOWNORMAL)

print "test"

enter image description here

ShowWindow功能和打印"测试"在手动关闭“文件上载”窗口后立即对所有工作进行操作。我的目标是使用win32api.SendMessage将文件名发送到窗口中的输入,但是当它打开时没有任何作用:(我这里只有一小部分代码,但其余的工作正常,除非它我们非常感谢。如果需要更多信息/完整代码,请告诉我们!

1 个答案:

答案 0 :(得分:0)

我建议使用Selenium而不是PyWin32:

您可以将Selenium安装为Firefox的插件,然后使用它记录您想要在Firefox中执行的任何操作。然后,您可以将录制内容导出为Python并根据需要进行编辑。