python+selenium win32gui实现文件上传,代码能运行但是没有实现效果

upload = dr.find_element_by_id('exampleInputFile0')
upload.click()
time.sleep(1)

# win32gui
dialog = win32gui.FindWindow('#32770', u'文件上传')  # 对话框

ComboBoxEx32 = win32gui.FindWindowEx(dialog, 0, 'ComboBoxEx32', None) 

ComboBox = win32gui.FindWindowEx(ComboBoxEx32, 0, 'ComboBox', None)

Edit = win32gui.FindWindowEx(ComboBox, 0, 'Edit', None)  # 上面三句依次寻找对象,直到找到输入框Edit对象的句柄

button = win32gui.FindWindowEx(dialog, 0, 'Button', None)  # 确定按钮Button


win32gui.SendMessage(Edit, win32con.WM_SETTEXT, None, 'D:\category.sql')  # 往输入框输入绝对地址

win32gui.SendMessage(dialog, win32con.WM_COMMAND, 1, button)  # 按button

阅读 4.7k
1 个回答

clipboard.png
图中圈出来的位置是点击上传按钮之后那个弹框的标题,也就是下图圈出来的标题,因为两个不一致匹配不到,所有就没有上传文件这个操作了

clipboard.png

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题