selenium在运行会出现一些预定义的javascript变量(特征字符串),例如:"window.navgator,webdriver",在非selenium变量下的值为undefined,但是在selenium环境下,其职为true,不同的属性可以参考:https://blog.csdn.net/qq_24137739/article/details/93190558,阿里滑动验证码就是基于selenium这些特征来进行评比管泽的。
webdriver_obj = webdriver.Chrome(‘pools/chromedriver.exe‘)
webdriver_obj.execute_cdp_cmd("Page.addScriptToEvaluateOnNewDocument", {
"source": ‘‘‘
Object.defineProperty(navigator, ‘webdriver‘, {
get: () => undefined
})
‘‘‘
})
1.打开cmd进入Chrome安装目录,执行
chrome.exe --remote-debugging-port=9222 --user-data-dir="C:\selenum\AutomationProfile"
2 代码实现
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
chrome_options = Options()
chrome_options.add_experimental_option("debuggerAddress", "127.0.0.1:9222")
chrome_driver = "C:\Program Files (x86)\Google\Chrome\Application\chromedriver.exe"
driver = webdriver.Chrome(chrome_driver, chrome_options=chrome_options)
原文:https://www.cnblogs.com/xm-python/p/14062320.html