selenium参数的使用

本文介绍了在Selenium中使用Chrome59版本以上的无头模式,设置代理服务器以及防止网站检测自动化工具的方法,包括使用`--headless`参数、Proxy类和排除自动化标志等技巧。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

selenium_参数的使用

chrome59版本以后可以变成无头的浏览器,加以下参数

def test_headless():
  # 设置参数,将浏览器隐藏起来(无头浏览器)
  options = ChromeOptions()
  options.add_argument('--headless')
  # 设置驱动
  service = Service('./chromedriver')
  # 启动Chrome浏览器
  driver = Chrome(service=service,options=options)
  # 访问页面
  driver.get('https://www.baidu.com')
  # 打印代码
  print(driver.page_source)
  #  关闭浏览器
  driver.quit()

代理模式

def test_proxy1():
  # 设置参数,给浏览器设置代理
  options = ChromeOptions()
  # options.add_argument('--proxy-server=http://ip:port')
  options.add_argument('--proxy-server=http://221.199.36.122:35414')
  # 设置驱动
  service = Service('./chromedriver')
  # 启动Chrome浏览器
  driver = Chrome(service=service,options=options)
  # 访问页面  "134.195.101.16",
  driver.get('http://httpbin.org/get')
  # 打印代码
  print(driver.page_source)
  #  关闭浏览器
  driver.quit()


def test_proxy2():
  from selenium.webdriver.common.proxy import ProxyType,Proxy
  # 设置参数,给浏览器设置代理
  ip = 'http://113.76.133.238:35680'
  proxy = Proxy()
  proxy.proxy_type = ProxyType.MANUAL
  proxy.http_proxy = ip
  proxy.ssl_proxy = ip
  # 关联浏览器
  capabilities = DesiredCapabilities.CHROME
  proxy.add_to_capabilities(capabilities)


  # 设置驱动
  service = Service('./chromedriver')
  # 启动Chrome浏览器
  driver = Chrome(service=service,desired_capabilities=capabilities)
  # 访问页面  "134.195.101.16",
  driver.get('http://httpbin.org/get')
  # 打印代码
  print(driver.page_source)
  #  关闭浏览器
  driver.quit()


防检测设置

from selenium.webdriver import Chrome
from selenium.webdriver import ChromeOptions


options = ChromeOptions()
options.add_experimental_option('excludeSwitches', ['enable-automation'])
options.add_experimental_option('useAutomationExtension', False)

chrome = Chrome(chrome_options=options)

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


chrome.get('http://httpbin.org/get')
info = chrome.page_source


print(info)
sleep(20)


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

留不住的人

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值