admin管理员组

文章数量:1794759

selenium 被服务器检测,解决办法

selenium 被服务器检测,解决办法

  1. 方法1:加参数
# 直接selenium启动,在浏览器 F12界面 console,输入 window.navigator.webdriver, 返回true
# 手动打开浏览器,在浏览器 F12界面 console,输入 window.navigator.webdriver, 返回 undefined
# 以上检测方法的参考性,待参考
from selenium import webdriver
from selenium.webdriver import ChromeOptions
option = ChromeOptions()     #实例化一个ChromeOptions对象
option.add_experimental_option('excludeSwitches', ['enable-automation'])  #以键值对的形式加入参数
driver = webdriver.Chrome(executable_path='./chromedriver.exe',options=option)  #在调用浏览器驱动时传入option参数就能实现undefined
# 以上方法确实能将 输入 window.navigator.webdriver, 返回 undefined
  1. 方法2:屏蔽JS参数
    参考文章:如何突破网站对selenium的屏蔽

  2. 使用pyppeteer模块
    基于js操作chromium,可以绕过selenium 的 chromrdriver驱动值的特征值检测
    安装pyppeteer模块
    待补充…

本文标签: selenium 被服务器检测解决办法