zoukankan      html  css  js  c++  java
  • selenium无头浏览器&规避操作

     一、无头浏览器概述: 无头浏览器主要目的是打开浏览器但用户看不到

     简单用法如下:

    from selenium import webdriver
    from time import sleep
    from selenium.webdriver.chrome.options import Options
    
    chrome_options = Options()
    chrome_options.add_argument('--headless')
    chrome_options.add_argument('--disable-gpu')
    
    
    bro = webdriver.Chrome(executable_path='./chromedriver.exe',chrome_options=chrome_options)
    bro.get('https://www.baidu.com')
    sleep(2)
    print(bro.page_source)
    bro.save_screenshot('1.png') #截图,后缀必须是png
    sleep(2)
    bro.quit()

    二、规避操作

      规避造作主要存在的意义把selenium程序伪装成一个正常的请求,欺骗浏览器

      正常情况下通过浏览器打开的一个网页的,在其console下执行window.navigator.webdriver会返回undefind,而通过selenium打开的浏览器下执行window.navigator.webdriver返回的是true,所以此处就需要用到规避。

    from selenium import webdriver
    from selenium.webdriver import ChromeOptions
    
    option = ChromeOptions()
    option.add_experimental_option('excludeSwitches',['enable-automation'])
    bro = webdriver.Chrome(executable_path='./chromedriver.exe',options=option)
    
    bro.get('https://www.taobao.com')
  • 相关阅读:
    Why does my Authorize Attribute not work?
    百度网页搜索部来自Console的招聘信息
    Javascript 日期时间超强正则表达式
    解决SQL Server [Suspect]
    我回来了
    不忘初心
    WEB系统技术开发方向
    使用postman模拟登录请求
    什么是蓝绿部署?
    element-ui Cascader 级联选择器示例
  • 原文地址:https://www.cnblogs.com/guniang/p/11727492.html
Copyright © 2011-2022 走看看