前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >selenium 特征屏蔽

selenium 特征屏蔽

作者头像
kirin
发布2021-03-22 14:42:04
1.6K0
发布2021-03-22 14:42:04
举报
文章被收录于专栏:Kirin博客

以下方法在某些时候可以抹除写一些 selenium 的自动化特征,使 window.navigator.webdriver 属性重新定义为 undefined 而不是 true。以下方法适用于较新版本的 chromedriver

本人亲测有效,特征头边变成了undefined 成功获取到了cookie,开心心

代码语言:javascript
复制
chrome_options = Options()
chrome_options.add_argument('--headless') #无头模式,适用于Linux系统
chrome_options.add_argument('--disable-gpu')
chrome_options.add_argument('--no-sandbox')  
#以下两行为实验性选项用于抹除特征
chrome_options.add_experimental_option("excludeSwitches", ["enable-automation"])
chrome_options.add_experimental_option('useAutomationExtension', False)
browser = webdriver.Chrome(options=chrome_options)
#重新定义window.navigator.webdriver属性
browser.execute_cdp_cmd("Page.addScriptToEvaluateOnNewDocument", {
  "source": """
    Object.defineProperty(navigator, 'webdriver', {
      get: () => undefined
    })
  """
})
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2021/03/18 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档