selenium无头浏览器+规避检测

from selenium import webdriver
# 实现无可视化
from selenium.webdriver.chrome.options import Options
# 实现规避检测
from selenium.webdriver import ChromeOptions


# 实现无可视化界面的操作
chrome_options = Options()
chrome_options.add_argument('--headless')
chrome_options.add_argument('--disable-gpu')

# 实现规避检测
option = ChromeOptions()
option.add_experimental_option('excludeSwitches', ['enable-automation'])

# 隐藏window.navigator.webdriver
option.add_argument("--disable-blink-features=AutomationControlled")

# 添加user-agent
option.add_argument(
    'user-agent=Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.198 Safari/537.36')

driver = webdriver.Chrome(executable_path='chromedriver.exe', chrome_options=chrome_options, options=option)

# 防止禁止selenium
    script = 'Object.defineProperty(navigator,"webdriver",{get:()=>undefined,configurable: true});'
    driver.execute_script(script)
posted @ 2021-03-02 17:30  YxinHaaa  阅读(98)  评论(0)    收藏  举报