import random
from time import sleep
from selenium.webdriver.common.keys import Keys
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.support.wait import WebDriverWait
option = webdriver.ChromeOptions()#selenium启动配置参数接收是ChromeOptions类
规避检测:selenium驱动的浏览器后window.navigator.webdriver值是true,正常的浏览器这个值是未定义的(undefined)。 对方网站根据这个特征容易识别出来你是爬虫!为了规避检测需要配置。 但在高版本的谷歌浏览器下,通过以下方式已经无效了,最新解决办法详情查看window.navigator.webdriver修改设置
option.add_experimental_option('excludeSwitches', ['enable-automation'])
去掉开发者警告:
option.add_experimental_option("useAutomationExtension", False) # 去掉开发者警告
还有一种比较强大的配置可以去除webdriver一些特征。
option.add_argument("--disable-blink-features")
option.add_argument("--disable-blink-features=AutomationControlled")
browser = webdriver.Chrome(options=option)
如果要彻底干净一些可以借助1段js,通过js