本地Chrome扩展设置文件的输入类型="file"
Local Chrome extension to set file of input type="file"
我正在开发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商店下载扩展,而不必担心扩展对他们的系统构成的风险。
相关文章:
- 正在将base64 jpeg从input-type=file上传到服务器
- 铬:“;未捕获的语法错误:意外的标记:"
- 可以设置“;文件名"发生错误时显示的内联脚本标记的
- JS表单提交"无法使用Chrome数据保护程序加载此页面.尝试重新加载页面.调试信息:POST CISmtuK
- 检测电话窃听,即:<a href="电话:xxx">在UIWebview上
- 使用“+="操作人员
- //而不是在src=“”上使用http://"属性
- "未捕获的语法错误:意外的标记}"
- 可以<脚本类型=“;text/javascript”>window.location=“/"</
- "实例范围”;TypeScript类的getter/setter
- Javascript复选框函数:;缺少:在属性id之后"
- "“;变量未引用正确的对象
- "日期“;AJAX请求返回的类型值未定义
- 得到"TypeError:无法读取属性'filename'未定义的“;调用“npm start
- Soundcloud api"未捕获的类型错误:无法读取属性'uri'“未定义”;
- 如何在Javascript代码中使用变量Ex:src="htp://www.url.com/file.php?
- "MLHttpRequest无法加载文件:///path/to/file.html”;错误
- & lt;输入类型=“file" /比;张贴数据为…
- & lt;输入类型=“file"祝辞,更改值
- & lt;输入类型=“file"祝辞属性在IE 11中显示不正确