【python】自动化工具Selenium与playwright去除webdriver检测


对这个世界如果你有太多的抱怨
跌倒了就不敢继续往前走
为什么人要这么的脆弱 堕落
请你打开电视看看
多少人为生命在努力勇敢的走下去
我们是不是该知足
珍惜一切 就算没有拥有
                     🎵 周杰伦《稻香》


在这里插入图片描述

# -*- coding:utf-8 -*-
import time

from  selenium import webdriver
from selenium.webdriver.edge.service import Service

option = webdriver.ChromeOptions()
option.add_experimental_option('excludeSwitches', ['enable-automation']) # 去掉webdriver提示 + 顶层窗口
option.add_argument("--disable-blink-features=AutomationControlled") # 屏蔽webdriver特征
browser = webdriver.Chrome(options=option,executable_path="/Applications/Chromium.app/Contents/MacOS/Chromium")

with open('webdriver_check.js', 'r', encoding='utf-8') as f:
    js = f.read()
    browser.execute_cdp_cmd("Page.addScriptToEvaluateOnNewDocument", {
        "source": js
    })

time.sleep(10000)

# -*- coding:utf-8 -*-
import time

from playwright.sync_api import sync_playwright


def main():
    # 启动Playwright
    with sync_playwright() as p:
        # 选择浏览器引擎(chromium、firefox、webkit)
        browser = p.chromium.launch(headless=False)

        # 创建新的浏览器上下文
        context = browser.new_context()

        # 创建新的页面
        page = context.new_page()
        with open('webdriver_check.js', 'r', encoding='utf-8') as f:
            js = f.read()
            page.add_init_script(js)

        # 打开网页
        page.goto('https://www.baidu.com/')

        # 在页面中查找并填写表单
        time.sleep(500)

        # 关闭浏览器
        browser.close()


if __name__ == "__main__":
    main()

相关推荐

  1. 自动化测试工具playwright

    2024-03-13 07:52:05       60 阅读
  2. Playwright:下一代自动化测试工具

    2024-03-13 07:52:05       51 阅读
  3. python爬虫——selenium自动化测试工具

    2024-03-13 07:52:05       30 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-03-13 07:52:05       98 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-03-13 07:52:05       106 阅读
  3. 在Django里面运行非项目文件

    2024-03-13 07:52:05       87 阅读
  4. Python语言-面向对象

    2024-03-13 07:52:05       96 阅读

热门阅读

  1. LeetCode383 —赎金信

    2024-03-13 07:52:05       35 阅读
  2. Linux命令学习(一)history

    2024-03-13 07:52:05       38 阅读
  3. 【天池课堂】零基础入门数据挖掘-课程汇总

    2024-03-13 07:52:05       45 阅读
  4. webpack5高级--02_提升打包构建速度

    2024-03-13 07:52:05       36 阅读
  5. peft模型微调--Prompt Tuning

    2024-03-13 07:52:05       41 阅读
  6. 使用node.js 开发后端的优缺点

    2024-03-13 07:52:05       45 阅读
  7. WebStrom报错

    2024-03-13 07:52:05       46 阅读
  8. 简单的torch网络模型记录

    2024-03-13 07:52:05       48 阅读
  9. 条款07:为多态基类声明virtual析构函数

    2024-03-13 07:52:05       44 阅读