chrome瀏覽器88版本隱藏webdriver方法
阿新 • • 發佈:2021-02-02
隱藏webdriver
最近不小心把chrome瀏覽給升級了,然後前幾天有用到selenium去訪問某寶。就除了一些問題,,,
然後找了半天原因,說是要把selenium中的webdriver屬性給隱藏才行。然後跟著其他大佬的教程改了一下,大部分都是說在訪問之前新增這句程式碼
Object.defineProperty(navigator, 'webdriver', { get: () =>undefined })
然後我跟著做,結果發現還是不能隱藏。
然後我在虛擬機器中嘗試了一下,發現可以,結果是undefined,看了下瀏覽器版本,還是7+,所以就想著應該是瀏覽器版本的問題,但是吧,給降了重灌就太費勁了。
chrome_options.add_argument("--disable-blink-features=AutomationControlled")
完美隱藏。。。
完整程式碼如下:
from selenium import webdriver import time url = "https://www.baidu.com" options = webdriver.ChromeOptions() options.add_experimental_option('excludeSwitches', ['enable-automation'])# 設定為開發者模式 options.add_argument("--disable-blink-features=AutomationControlled") browser = webdriver.Chrome(options=options) browser.execute_cdp_cmd("Page.addScriptToEvaluateOnNewDocument",{ 'source':'''Object.defineProperty(navigator, 'webdriver', { get: () =>undefined''' } ) browser.get('https://www.baidu.com') time.sleep(20) # 休息一下,自己去look,look有沒有隱藏成功 browser.close()