luc*_*cas 8 python selenium selenium-firefoxdriver
使用Selenium和python,我可以使用Chrome webdriver来做到这一点:
options.add_experimental_option("excludeSwitches", ["enable-automation"])
driver = webdriver.Chrome(options = options)
Run Code Online (Sandbox Code Playgroud)
但是我找不到Firefox的webdriver选项的类似属性。是否存在?
CST*_*CST 11
Firefox 使用不同的标志。我不确定您的目标是什么,但我假设您正试图避免某些网站检测到您正在使用硒。
有多种方法可以避免网站检测到 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)
Run Code Online (Sandbox Code Playgroud)
小智 3
你可以尝试:
from selenium.webdriver.firefox.firefox_profile import FirefoxProfile
from selenium.webdriver import DesiredCapabilities
from selenium.webdriver import Firefox
profile = FirefoxProfile()
profile.set_preference('devtools.jsonview.enabled', False)
profile.update_preferences()
desired = DesiredCapabilities.FIREFOX
driver = Firefox(firefox_profile=profile, desired_capabilities=desired)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
335 次 |
| 最近记录: |