在使用selenium的时候有时候会受到网站的检测导致我们的程序被迫中止,因此我们需要给selenium添加一些浏览器特征来防止被网站检测到**(1-4为防检测配置)**.文章来源:https://www.toymoban.com/news/detail-521920.html
- 在给selenium添加参数的时候,我们可以使用add_argument
option = webdriver.ChromeOptions() # 首先实例化一个ChromeOptions
- selenium添加user-agent参数
option.add_argument('user-agent=Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.198 Safari/537.36')
- 去除 “Chrome正受到自动化测试软件的控制”
option.add_experimental_option('excludeSwitches', ['enable-automation'])
- 添加浏览器特征
option.add_argument("--disable-blink-features=AutomationControlled")
- selenium无头模式(即不会弹出浏览器来运行)
option.add_argument('--headless')
- 保留自己浏览器的cookie信息等,让selenium操作的浏览器跟自己所使用的一样,而不是新开一个,在操作一些需要登录的网站的时候,可以直接免登陆
option.add_argument(r'--user-data-dir=C:\Users\honor\AppData\Local\Google\Chrome\User Data')
- 在新版的selenium中,在代码执行完之后浏览器就会自动关闭,但我们在调试的时候可能不需要它自动关闭,因此可以通过以下代码来让浏览器不自动关闭
option.add_experimental_option("detach", True)
而–user-data-dir=后面的值可以在谷歌浏览器(chrome://version/)中看到,替换为自己的即可
在最后实例化driver对象的时候,将option添加到其中即可文章来源地址https://www.toymoban.com/news/detail-521920.html
driver = webdriver.Chrome(options=option)
感谢您的阅读!
到了这里,关于针对于selenium的一些常规配置(防检测,无头,保留自己浏览器的登录信息等)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!