使用python在已打开的对话框中选择一个文件

时间:2014-05-01 01:44:27

标签: python selenium upload dialog

我使用Selenium在Mac上执行浏览器内部的一系列操作(同时尝试使用Chrome和FireFox)。

我使用Selenium函数点击一个按钮,打开一个操作系统级别对话框,我可以在其中选择"打开"一份文件。我知道Selenium不能与对话框进行交互,但是有没有Python功能呢? Tkinter似乎只能在打开的对话框中操作,而不能在已打开的框中操作。

这是代码的一个版本,使对话框打开的最后一个Selenium函数以粗体显示:

import webbrowser  
from from selenium import webdriver  
element = webdriver.Chrome()  
element.get('http://www.somewebsite.com')  
uploadfunction = driver.find_element_by_id('upload_file').click()  

我坚持在诉诸另一种语言之前,纯粹通过Python(通过命令行)这样做。

1 个答案:

答案 0 :(得分:0)

import win32gui

win32gui.FindWindow(ClassName,WindowName) #should give you the control of the dialog that you want.  

再看一下this问题的接受答案,以获得对话框的(尽管有点混乱)助手。

如果您仍然被卡住,请告诉我。