python - 如何使用 Selenium for Firefox (geckodriver) 将 navigator.webdriver 设置为未定义
问题描述
我正在尝试使用 Python 中的 Selenium 将 Firefox 浏览器中的 navigator.webdriver 变量设置为未定义。
使用 Chrome 时我已经能够成功地做到这一点,但现在我需要在 Firefox 中使用同样的方法。使用 Firefox 网络驱动程序时,execute_cdp_cmd(...) 不存在。
有谁知道如何使用 firefox webdriver 而不是 chrome webdriver 来做同样的事情?
请参阅下面的相关代码。
driver.execute_cdp_cmd("Page.addScriptToEvaluateOnNewDocument", {
"source": """
Object.defineProperty(navigator, 'webdriver', {
get: () => undefined
})
"""
})
解决方案
从那以后,我找到了解决问题的方法。下面的代码将在 Selenium 运行的 Firefox 浏览器中将“navigator.webdriver”设置为未定义。
profile.set_preference("dom.webdriver.enabled", False)
推荐阅读
- git - Git push 或 pull 似乎没有响应
- excel - Excel VBA表格操作:基于第一列转置列
- nginx - 代理正文大小、缓冲区大小和服务器片段的 GKE 入口控制器注释
- laravel - 关系不起作用并寻找一个奇怪的表名?
- python-3.x - 标题问题和总结多个excel行
- javascript - 有没有办法在对象属性解构中利用空值合并运算符(`??`)?
- csv - JMeter CSV 读取并分组读取的行数
- apache-spark - 如何将 Great Expectations DataFrame 转换为 Apache Spark DataFrame
- javascript - 离子中的图标和 svg 图像显示问题
- kotlin - 如何使用 ktor 客户端帖子序列化为密封类