python-selenium-规避检测,无头浏览器

2023-10-31

1:无头浏览器

取消的浏览器的可视化界面,在一定程度上加了自动化速度

chrome_options=Options()
chrome_options.add_argument("--headless")
chrome_options.add_argument("--disable-gpu")
driver = webdriver.Chrome(options=chrome_options)

2:规避--取消浏览器中的自动化程序正在控制浏览器

自动化打开的浏览器和出现

我们可以使用代码把他去掉

opt = Options()
opt.add_experimental_option('excludeSwitches',['enable-automation'])
driver = webdriver.Chrome(options=opt)

 3:2:规避---window.navigator.webdriver问题

 

正常打开浏览器输入window.navigator.webdriver结尾:false或者undefined

selenium打开的浏览器是:true

driver.execute_cdp_cmd("Page.addScriptToEvaluateOnNewDocument", {
            "source": """
            Object.defineProperty(navigator, 'webdriver', {
              get: () => undefined
            })
            """
        })

复制上面的代码即可,但是有些网站还是会失败

也可以通过这中方式

with open('./stealth.min.js')as f:
    js=f.read()
driver.execute_cdp_cmd("Page.addScriptToEvaluateOnNewDocument", {
            "source": js
})

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

python-selenium-规避检测,无头浏览器 的相关文章

随机推荐

  • 感性工学

    感性工学是为了消费者情感的满足而进行调查分析的 对分析的定性数据进行解释和定量化 即规范化 目的是为设计师和工程师实现情感设计 感性工程是指将人类定性的情感转化为定量数据化 以便工程师在设计中得到应用 具体化为产品的格式 例如 如果消费者想
  • 动态规划算法解决01背包问题

    01背包问题 有一个背包它可以背n单位重量的物品 有几种物品它们的重量分别为1 2 3个单位 它们对应的权重分别为1500 2000 3000 求该背包怎样放物品才能使权重最大 一种物品只能放一次 思路 如下图用二维数组 v i j 代表i
  • Web浏览器没有Flash如何播放RTMP协议直播

    各大主流浏览器在很早的时候就已声明 2020 年底不支持 Adobe Flash 所以已经线上运行的项目以及涉及直播的项目 都会涉及一个问题 没有 Adobe Flash 在 Web 浏览器端如何播放 RTMP 直播流 方案1 需要流媒体服
  • WSL2 占位程序接收到错误数据。 Error code: Wsl/Service/0x800706f7

    在 windows 的 terminal 中输入 需要以管理员权限 netsh winsock reset 然后就可以正常启动 WSL2 了 不用重启电脑 from 李志成的个人网站
  • qt中设置父窗口中某一控件样式后,子窗口中某一控件也随父控件样式

    引言 创建的窗口中含有滚动区域 滚动区域创建了很多按钮 点击按钮后弹出一个弹框 当设置了滚动区域的中心窗口的背景样式后 之前设置好的点击后按钮弹出框的背景样式也跟随着变化了 方法 究其原因是因为滚动区域的窗口与点击按钮后的弹出框之间存在着关
  • 【线程(二)】——互斥量的详细解析

    作者 努力学习的少年 个人简介 双非大二 一个正在自学c 和linux操作系统 写博客是总结知识 方便复习 目标 进大厂 如果你觉得文章可以的话 麻烦你给我点个赞和关注 感谢你的关注 目录 进程线程间的互斥的相关概念 错误的抢票系统 lin
  • 6、(二进制类型)BIT、BINARY、VARBINARY、BLOB

    MySQL 支持两类字符型数据 文本字符串和二进制字符串 二进制字符串类型有时候也直接被称为 二进制类型 MySQL 中的二进制字符串有 BIT BINARY VARBINARY TINYBLOB BLOB MEDIUMBLOB 和 LON
  • 【网络运维与安全岗位】月薪2.5w,您还不知道的前景!

    一 为什么学网络安全 标重点 1 市场巨大 每年各安全厂商收入高达400亿左右 随着5G的发展 万物互联时代 市场将进一步扩大 2 薪资高 网安人才的匮乏 用人开出招聘薪资往往高于求职者的预期 3 靠能力说话 在网络安全专业 专业技能竞争力
  • SourceTree 总是提示 git credential manager

    解决 1 使用sourcetree内嵌的git 还不行的话更新下版本 2 仓库设置里面加上用户名密码 格式 http 用户名 密码 xxx git
  • 常见数据库安装

    简介 本文记录了常用数据库 MySQL PostgreSQL MSSQL Oracle Redis MongoDB在Windows 及Linux Ubuntu 下 MSSQL Oracle除外 的安装 macOS可参考前两者 解决了Orac
  • 摄像机控制脚本

    脚本效果 1 跟随目标物体 2 通过滚轮调整距离 右键或Ctrl 左键旋转角度 using System Collections using System Collections Generic using UnityEngine publ
  • ASP.NET MVC3 类面向切面AOP 的Filter操作

    在开发大项目的时候总会有相关的AOP面向切面编程的组件 而MVC 特指 Asp Net MVC 以下皆同 项目中不想让MVC开发人员去关心和写类似身份验证 日志 异常 行为截取等这部分重复的代码 那我们可以通过AOP截取实现 而在MVC项目
  • 生产者/消费者代码(使用notify和wait实现)

    package cn wzy Lock import java util Random public class ConsumerAndProducer static String food new String 5 static Stri
  • TypeScript入门二(类型)

    1 TypeScrip 的静态类型 TypeScript 的一个最主要特点就是可以定义静态类型 英文是 Static Typing 那到底是什么意思那 太复杂的概念性东西这里就不讲了 你可以简单的理解 静态类型 为 就是你一旦定义了 就不可
  • js 数据转换(保留两位小数,去除前面多余的0等)

    保留两位小数 不够的添0补齐 function changeTwoDecimal f x var f x parseFloat x if isNaN f x return 0 var f x Math round x 100 100 var
  • 为什么const 定义的对象和数组可以改变它的值呢

    碰到这个问题我第一反应是肯定不能改变 如果要改变值的话 用const定义干嘛 然后不信邪在浏览器控制台试试结果 卧槽 但是定义一个基本类型 确实改不了 那为什么const 定义的对象和数组可以改变它的值呢 我来为大家解释一下 都知道对象和数
  • Unity3D实战【七】Cinemachine & Post Processing 摄像机跟踪和后处理

    一 摄像机跟随 1 PackManger中安装Cinemachine 2 点击菜单栏的Cinemachine gt Create Virtual Camera 会代替原来的Main Camera 3 调整参数 Body Framing Tr
  • js中根据已知key得到某对象中相对应的value的方法

    给自己打个小广告 有开发APP 小程序 网站 后台系统需求 或者 想学习前端的可以私信我哈 var key accountBingFlag1 var value obj key var key accountBingFlag1 var va
  • 如何用git命令生成Patch和打Patch

    在程序员的日常开发与合作过程中 对于code的生成patch和打patch 应用patch 成为经常需要做的事情 什么是patch 简单来讲 patch中存储的是你对代码的修改 什么是生成patch 生成patch就是记录你对代码的修改并将
  • python-selenium-规避检测,无头浏览器

    1 无头浏览器 取消的浏览器的可视化界面 在一定程度上加了自动化速度 chrome options Options chrome options add argument headless chrome options add argume