首页 > 其他分享 >selenium被某些网页检测不允许正常访问、登录等,解决办法

selenium被某些网页检测不允许正常访问、登录等,解决办法

时间:2022-11-18 12:35:45浏览次数:44  
标签:webdriver 网页 option 解决办法 cdc selenium asdjflasutopfhvcZLmcfl add options

网站通过什么方式检测

function b() {
            return "$cdc_asdjflasutopfhvcZLmcfl_"in u || d.webdriver
        }
  1. 通过上方的js网站可以检测chromedriver.exe的特征码:$cdc_asdjflasutopfhvcZLmcfl_
  2. js还会检测window.navigator.webdriver这个属性,如果用selenium调用浏览器这个值会是true,手动打开浏览器这个值是false;可以通过浏览器的console输入console.log(window.navigator.webdriver)查看该属性的值

$cdc_asdjflasutopfhvcZLmcfl_ 特征码解决办法

有人说在电脑上使用notepad++打开chromedriver.exe文件搜索修改$cdc_asdjflasutopfhvcZLmcfl_这个值可以解决。不过我用notepad++打开后可能是因为编码问题,我并没有找到这个值。所以我上传到服务器上用vim编辑器做的修改,如下:

  1. 上传chromedriver.exe文件到服务器上
    image
  2. 使用vim编辑器打开chromedriver.exe文件,并查找$cdc_asdjflasutopfhvcZLmcfl_这个值进行修改
    image

    需要注意的是:cdc_asdjflasutopfhvcZLmcfl_这个值是多少个字符,那么你修改完之后还需要是多少个字符。

  3. 修改完之后:wq保存病退出,然后把这个文件重新下载到电脑上就行了

webdriver值为true的解决办法

方案1:设置webdriver的值为false

if __name__ == '__main__':
    service = Service('chromedriver.exe')
    option = webdriver.ChromeOptions()
    option.add_argument('disable-infobars')
    option.add_argument('sec-fetch-site=same-site')
    option.add_experimental_option('excludeSwitches', ['enable-automation'])
    option.add_experimental_option('useAutomationExtension', False)
    option.add_experimental_option("excludeSwitches", ['enable-automation'])
    option.add_argument("--disable-blink-features")
    option.add_argument("--disable-blink-features=AutomationControlled")
    driver = webdriver.Chrome(service=service,options=option)

使用option自定义配置chrome浏览器修改webdriver的值为false

方案2:设置webdriver的值为undefined

options.add_experimental_option("excludeSwitches", ["enable-automation"])
options.add_experimental_option('useAutomationExtension', False)
driver = webdriver.Chrome(options=options)
driver.execute_cdp_cmd("Page.addScriptToEvaluateOnNewDocument", {
  "source": """
    Object.defineProperty(navigator, 'webdriver', {
      get: () => undefined
    })
  """
})

标签:webdriver,网页,option,解决办法,cdc,selenium,asdjflasutopfhvcZLmcfl,add,options
From: https://www.cnblogs.com/baskbug/p/16902797.html

相关文章

  • Ubutu下 vim 的.vimrc配置以及YourCompletedMe无法stl代码提示的解决办法
    我的vim效果预览主题颜色是desertEx有目录树,和函数显示器,以及代码提示,根据文件类型自动生成文件头下面是我的.vimrc配置!请全屏观看点击查看代码setnocompatible......
  • 手机打开局域网发布的网页
    1、局域网通过IIS发布网页成功后,默认网址能够打开网页2、用电脑上的无线IP替换localhost不知道无线IP是多少通过cmd–>ipconfig获取3、手机访问替换后的网址即可(手机连接......
  • Selenium的使用,安装chromedriver
    注意chrome和ChromeDriver版本对应1、安装32位电脑版chrome默认路径"C:\ProgramFiles(x86)\Google\Chrome\Application\chrome.exe"2、下载好的chromedriver.exe直接拷......
  • yolo系列读取图片时提示corrupt JPEG data警告的解决办法
    贴出这个问题主要时因为警告一直弹出应影响训练的速度,毕竟一直打印警告,这个问题主要是图片格式问题问题在往原来数据集添加一些新的图片数据开始训练时,遇到下面的问题......
  • Selenium4+Python3系列(七) - Iframe、Select控件、交互式弹出框、执行JS、Cookie操作
    前言突然,想把所有之前未更新的常用Api操作、演示写出来,算是对API的一种完结吧。下面按照Api模块来做逐一介绍。一、iframe操作iframe识别:语法:driver.switch_to.fram......
  • 调用网页摄像头
    <!--CopyrightEpicGames,Inc.AllRightsReserved.--><!DOCTYPEHTML><html><head>  <linkrel="shortcuticon"href="/images/favicon.ico"type="im......
  • 黏包现象及解决办法
    黏包现象1.服务端连续执行三次recv#服务端收3次2.客户端连续执行三次send#客户端发3次问题:服务端一次性接收到了客户端3次的消息,该现象称为'黏包现象'黏包现......
  • vue网页滚动到一定程度出现动画效果
    script代码 data(){    return{      toShow3:false,    };  }mounted(){window.addEventListener('scroll',th......
  • Python selenium 插入图片
    方法一如果有上传图片按钮的,就比较简单了:browser.find_element_by_id("IdOfInputTypeFile").send_keys(os.getcwd()+"/image.png")browser.find_element_by_xpath("IdOfInpu......
  • 5selenium概念
    来源:CSDN参考即可上个课时我们讲解了Ajax的分析方法,利用Ajax接口我们可以非常方便地完成数据的爬取。只要我们能找到Ajax接口的规律,就可以通过某些参数构造出对......