将文件上载到selenium弹出窗口

2024-06-26 17:49:11 发布

您现在位置:Python中文网/ 问答频道 /正文

我已经搜索了论坛,找到了一些关于这方面的信息,但不完全是我所面临的问题。我正在自动上传文件到一个网站。不幸的是,该网站使用了一个计数器作为“浏览”按钮的id。使用Selenium和Firebug,我找到了另一种识别按钮的方法。我已经将脚本导出到python中以添加变量,这样我就可以自动化了。但是,浏览按钮会打开一个窗口弹出窗口来选择文件。剧本是这样开始的。。。在

driver.find_element_by_xpath("//*[@type=\"file\"]").click()
driver.find_element_by_id("upfile_1405369589849").clear()
driver.find_element_by_id("upfile_1405369589849").send_keys("path\\file")
driver.find_element_by_id("upload_button").click()

在这里,点击上传按钮,弹出窗口出现,它坐在那里嘲笑我。我试着用xpath代替id,但是没用。我也试过下面这些。。。在

^{pr2}$

试过这个。。。在

driver.find_element_by_id("upfile_*").send_keys("path\\file")

我似乎无法让窗户做出反应,除了那是嘲弄性的眩光。如果有人能帮我解决这个问题,我将不胜感激。在


Tags: 文件pathsendidby网站driverelement
1条回答
网友
1楼 · 发布于 2024-06-26 17:49:11

这是不可能的。修改团队就是为了你。在页面中添加一个javascipt函数,该函数允许您将文件名传递给处理程序,而不必单击browse按钮。在

如果您不能这样做,我建议您研究一下Sikuli,它允许您使用模式识别(屏幕截图)与windows提示符进行交互。在

相关问题 更多 >