Python Selenium将文件上载到网页
我正在尝试将文件上载到一个网站,该网站有一个用于上载文件的下拉框区域,我尝试了element。单击()会显示windows弹出窗口以选择文件,当我尝试element.send_keys('path')时,它会引发一条消息:element不可交互,如何解决此问题 以下是网站:Python Selenium将文件上载到网页,python,selenium,selenium-webdriver,Python,Selenium,Selenium Webdriver,我正在尝试将文件上载到一个网站,该网站有一个用于上载文件的下拉框区域,我尝试了element。单击()会显示windows弹出窗口以选择文件,当我尝试element.send_keys('path')时,它会引发一条消息:element不可交互,如何解决此问题 以下是网站: 提前感谢。上传输入控件打开一个本机对话框(由浏览器完成),因此通过Selenium单击控件或浏览按钮将弹出对话框,测试将挂起 解决方法是通过JavaScript设置上传输入的值,然后提交表单 //模拟单击 webdriver
提前感谢。上传输入控件打开一个本机对话框(由浏览器完成),因此通过Selenium单击控件或浏览按钮将弹出对话框,测试将挂起 解决方法是通过JavaScript设置上传输入的值,然后提交表单
//模拟单击
webdriver.ActionChains(驱动程序)。将\移动到\元素(元素)。单击(元素)。执行()
//驱动程序是webdriver的实例
驱动程序。通过id(“IdOfInputTypeFile”)查找元素。发送密钥(os.getcwd()+“/video.mp4”)
os.getcwd()
返回当前工作目录video.mp4
位于同一目录下运行脚本的旁边。感谢您的建议,我已经像这个驱动程序一样尝试过了。通过\u id(“上传程序块”)查找\u元素。发送\u键(os.getcwd()+“videos/video.mp4”)因为我在一个名为“videos”的目录中有视频,但仍然得到相同的可交互错误元素。我认为selenium没有找到元素try time。sleep(10)是的,即使在时间过后。sleep(10)仍然可以交互。我发现,你需要通过Javascript单击元素,而不是selenium使用的“自然”单击(尝试模拟用户体验)。所以请查看我的更新答案。嗯,我不知道我做错了什么,我创建了element=driver。按id(“上传可点击”)查找elemnt,并出现相同的错误