使用 Selenium 和 python,我可以使用 Chrome webdriver 来完成此操作:
options.add_experimental_option("excludeSwitches", ["enable-automation"])
driver = webdriver.Chrome(options = options)
但我找不到 Firefox 的 webdriver 选项的类似属性。有吗?
最佳答案
Firefox 使用不同的标志。我不确定您的具体目标是什么,但我假设您正在尝试避免某些网站检测到您正在使用 Selenium 。
有多种方法可以避免网站检测到 Selenium 的使用。
1) 使用 Selenium 时,navigator.webdriver 的值默认设置为 true。该变量将出现在 Chrome 和 Firefox 中。该变量应设置为“未定义”以避免检测。
2) 还可以使用代理服务器来避免检测。
3) 一些网站能够使用您的浏览器状态来确定您是否正在使用 Selenium。您可以将 Selenium 设置为使用自定义浏览器配置文件来避免这种情况。
下面的代码使用了所有这三种方法。
profile = webdriver.FirefoxProfile('C:\\Users\\You\\AppData\\Roaming\\Mozilla\\Firefox\\Profiles\\something.default-release')
PROXY_HOST = "12.12.12.123"
PROXY_PORT = "1234"
profile.set_preference("network.proxy.type", 1)
profile.set_preference("network.proxy.http", PROXY_HOST)
profile.set_preference("network.proxy.http_port", int(PROXY_PORT))
profile.set_preference("dom.webdriver.enabled", False)
profile.set_preference('useAutomationExtension', False)
profile.update_preferences()
desired = DesiredCapabilities.FIREFOX
driver = webdriver.Firefox(firefox_profile=profile, desired_capabilities=desired)
关于python - 排除 Firefox Webdriver 选项中的开关,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57122151/