所以我在这里使用这段代码。
Manuscript = browser.find_element_by_id('data-print-book-publisher-interior-file-upload-browse-button').send_keys("/Users/Name/Downloads/FishingLogCombined.pdf")
Manuscript.submit()
我得到的只是一个打开的对话框。文件路径选项中未粘贴任何内容。只是打开我的文件的对话框。有什么我可以做的吗?我尝试了许多不同的选项,但没有一个起作用。
答案 0 :(得分:0)
有两种方法可以解决此问题。一种是使用sendKeys
driver.find_element_by_id('element-id').sendkeys("path-to-the-file");
如果这不起作用,则必须使用AutoIt
脚本来完成此操作。
答案 1 :(得分:0)
这可以使用Selenium中的Robot界面来完成。
您将必须创建实例import os
this_dir = os.path.abspath(os.path.dirname(__file__))
my_dll = ctypes.cdll.LoadLibrary(os.path.join(this_dir, 'bar.dll'))
并将路径作为参数StringSelection
然后将其复制到String text = "sampledoc.txt";
StringSelection stringSelection = new StringSelection(text);
接口,并将路径设置为setcontent方法。
Clipboard
现在我们只需要使用硒中的Toolkit.getDefaultToolkit().getSystemClipboard().setContents(stringSelection ,null);
类来进行键盘按键交互。
请按照下面提到的关键事件进行操作,您的上传应该会成功。
Robot