本地Chrome扩展设置文件的输入类型="file"

Local Chrome extension to set file of input type="file"

本文关键字:quot file 类型 输入 扩展 Chrome 设置 文件 本地      更新时间:2023-09-26

我正在开发Chrome浏览器的扩展。我不想使用扩展名从input type="file" html元素中选择一个文件。但我知道,由于安全限制,这是不可能的。

是否有办法删除Chrome与此问题相关的安全限制,以便这将是可能的。

谢谢。

好吧,我来回答我自己的问题。

首先感谢Michael Dibbets和wtjones的回答。--disable-web-security and --allow-file-access-from-files不起作用。我没有使用本地插件,也没有从源代码扩展chrome,因为这似乎需要时间。

解决方案:

我使用了chromedriver和selenium java来实现chrome的自动化。

,在Slanec的答案的帮助下,我能够实用地选择文件。

下面是java代码:
System.setProperty("webdriver.chrome.driver", "C:/.../chromedriver.exe");
WebDriver driver = new ChromeDriver();
driver.get("URL_OF_THE_PAGE");
WebElement link = driver.findElement(By.linkText("TEXT_IN_THE_LINK"));
link.click();
WebElement choose_file_input = driver.findElement(By.className("CLASS_OF_THE_INPUT"));
choose_file_input.sendKeys("PATH_TO_FILE");

谢谢!

这是一个个人使用的扩展吗?如果是这样,你可以使用——disable-web-security和——allow-file-access-from-files。否则你可能需要使用本地插件:https://code.google.com/p/firebreath/

下载chromium源代码并编译自己的浏览器。

安全限制是有目的的,不能被绕过(无论如何都不容易)目的是用户可以从google play商店下载扩展,而不必担心扩展对他们的系统构成的风险。