java - 将文件的路径发送到谷歌驱动器

标签 java selenium google-drive-api

我正在尝试使用 selenium 将文件路径发送到云应用程序(例如 Google Drive 或 Dropbox)上的“文件上传”按钮。我能够找到“文件上传”元素并单击它,然后“文件上传窗口”打开,这样我就可以手动上传文件,但这不是我想要的。我想做的是将路径发送到“文件上传窗口”,而不需要单击“文件上传”按钮。

box ui

如图所示,如果我按"file"按钮上传文件,则会打开一个弹出窗口。 popup window 我希望能够将路径直接发送到弹出窗口,而不需要打开它。 有办法实现吗? 谢谢

最佳答案

您可以在此处使用 autoit 来上传 Google Drive 中的文件,单击使用 selenium,上传窗口打开后添加 autoit 代码来上传文件。

public void uploadfilechromeforgdrive(String path, String fileName) throws InterruptedException {
    Logger.info("Started uploading " + fileName + " in Progress");
    String dllPath = System.getProperty("user.dir") + File.separator + "src" + File.separator + "test"
            + File.separator + "resources" + File.separator + "lib" + File.separator + "jacob-1.18-x64.dll";
    File file = new File(dllPath);
    System.setProperty(LibraryLoader.JACOB_DLL_PATH, file.getAbsolutePath());
    AutoItX x = new AutoItX();
    x.winActivate("Open");
    x.winWaitActive("Open");
    Thread.sleep(5000);
    x.controlFocus("[CLASS:#32770]", "", "Edit1");
    Thread.sleep(5000);
    x.ControlSetText("[CLASS:#32770]", "", "Edit1", path + fileName);
    Thread.sleep(5000);
    Logger.info("The sent file name " + fileName);
    x.controlClick("[CLASS:#32770]", "", "Button1");
    Thread.sleep(50000);
    Logger.info("Started uploading " + fileName + " completed");
}

关于java - 将文件的路径发送到谷歌驱动器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45669911/

相关文章:

Java - 拖放不适用于 selenium 3.8

python - Google Drive API,上传文件[Python]

google-api - 如何解决 403 错误 : User rate limit exceeded in Google Drive API?

python - 无法启动Tor浏览器

python - 为什么我不能将 "send_keys"添加到带有 selenium 的文本框?属性错误 : 'NoneType'

java - 无法加载 OrientDB rw - "Cannot load database' s 配置。数据库似乎已损坏。”

java - 为可信空间定制 Spring Security

php - 在 Google 云端硬盘中创建文件夹并插入文件

java - 使用 ExtJS 6 拖放文件

java - 使用字符串替换删除标点符号在 Java 中不起作用