gpt4 book ai didi

c# - WebDriverException : 'SecurityError: The operation is insecure.' error using document. write() 在 Firefox 中通过 Selenium

转载 作者:行者123 更新时间:2023-12-04 17:23:28 26 4
gpt4 key购买 nike

我需要在 Firefox selenium 中加载一个页面,然后重写页面的内容,我必须使用 Firefox,所以 Chrome 不是一个选项。

我试过下面的代码

FirefoxDriver firefoxDriver = new FirefoxDriver(new FirefoxOptions() { AcceptInsecureCertificates = true });

IJavaScriptExecutor javaScriptExecutor = (IJavaScriptExecutor)firefoxDriver;
firefoxDriver.Navigate().GoToUrl("https://www.google.com");
javaScriptExecutor.ExecuteScript("document.write('a');");

但它给了我错误:

OpenQA.Selenium.WebDriverException: 'SecurityError: The operation is insecure.

`

我需要知道 about:config 中是否有任何选项或任何方式让 Firefox 运行不安全的操作。

最佳答案

文档.write()

Document.write()方法将文本字符串写入文档流,在关闭(已加载)文档上调用 document.write() 会自动调用 document.open(),这将清除文档。

长期以来,除了删除所有节点外,还删除了所有 JavaScript 变量。但现在已经不是这样了。然而仍然继续这样做。

  • 等效的 Python 代码:

    from selenium import webdriver

    options = webdriver.ChromeOptions()
    options.add_argument("start-maximized")
    driver = webdriver.Chrome(options=options, executable_path=r'C:\WebDrivers\chromedriver.exe')
    driver.get("https://google.com")
    driver.execute_script("document.write('a');")
  • 浏览器快照:

Chrome


Gecko-specific notes

Starting with Gecko 1.9, this method is subject to the samesame-originpolicyas other properties, and does not work if doing so would change thedocument's origin.

Starting with Gecko 1.9.2, document.open() uses the principal of thedocument whose URI it uses, instead of fetching the principal off thestack. As a result, you can no longer call document.write() into anuntrusted document from chrome, even usingwrappedJSObject.


;博士

参见 Security check basics有关校长的更多信息。


引用资料

您可以在以下位置找到一些相关的详细讨论:

关于c# - WebDriverException : 'SecurityError: The operation is insecure.' error using document. write() 在 Firefox 中通过 Selenium,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64918019/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com