Selenium框架添加CONNECT以抓取https网站

Selenium框架

Selenium是一个用于Web应用程序测试的强大工具,它提供了一系列的API,可以模拟用户在浏览器中的操作,包括点击、填写表单、导航等。在进行网络提取数据时,https网站的数据提取一直是一个技术难点。Selenium作为一个自动化测试工具,也可以用于数据提取,但默认情况下并不支持https网站的数据提取。本文将介绍如何配置Selenium项目以添加CONNECT支持,从而实现https网站的数据摘要。

HTTPS问题

首先,让我们了解一下为什么在抽取HTTPS网站时会遇到问题。HTTPS是一种通过了解传输层安全协议(TLS)进行加密的HTTP通信协议。这意味着网站使用SSL证书对通信进行加密,以确保数据的安全性和缺陷。然而,这也意味着在使用Selenium时,需要我们确保它能够正确处理这种加密连接。

为了解决这个问题,我们可以使用Selenium的Desired Capability来添加CONNECT选项。Desired Capability是一个键值对,用于配置Selenium WebDriver实例的行为。通过设置CONNECT选项,我们可以告诉Selenium建立安全连接的方式。

如何在Selenium中添加CONNECT支持?

现在让我们来讨论如何在Selenium中添加CONNECT支持。为了实现这个功能,我们可以使用Selenium的Desired Capability来配置代理服务器,并通过代理服务器来建立连接。以下是一个示例代码,演示了如何在Selenium中添加CONNECT支持:

复制代码
from selenium import webdriver
from selenium.webdriver.common.desired_capabilities import DesiredCapabilities

# 设置代理服务器信息
proxyHost = "www.16yun.cn"
proxyPort = "5445"
proxyUser = "16QMSOML"
proxyPass = "280651"

# 创建代理对象
proxy = f"{proxyUser}:{proxyPass}@{proxyHost}:{proxyPort}"
capabilities = DesiredCapabilities.CHROME
capabilities['proxy'] = {
    "httpProxy": proxy,
    "ftpProxy": proxy,
    "sslProxy": proxy,
    "proxyType": "MANUAL",
}

# 添加CONNECT支持
capabilities['acceptSslCerts'] = True

# 启动浏览器
driver = webdriver.Chrome(desired_capabilities=capabilities)

# 访问https网站
driver.get("https://example.com")

# 进行其他操作
# ...

# 关闭浏览器
driver.quit()
实现https网站的

现在,您可以使用Selenium来访问https网站并进行数据摘要了

复制代码
proxy.new_har("example", options={'captureHeaders': True, 'captureContent': True})
driver.get("https://example.com")
result = proxy.har
# 处理抓取到的数据
相关推荐
2501_9159184117 小时前
iOS 怎么抓包?抓包鹰系统级 网卡 应用层三种方式对比,不越狱抓 iPhone 流量
网络协议·计算机网络·网络安全·ios·adb·https·udp
自动化测试行业观察17 小时前
从“自动化”到“智能化”:TestMan AI测试平台引领软件测试范式转移
运维·自动化测试·人工智能·测试工具·自动化·app测试·移动应用测试
Hy行者勇哥17 小时前
Coze 搭建【软件测试助手 Skill】可行分析及操作实践
测试工具·压力测试
后除21 小时前
Debian 安装与使用 Certbot
后端·nginx·https
我不满意21 小时前
loadrunner-11安装+破解+汉化(提供安装包,破解方式,汉化包)
测试工具·microsoft
2501_915921431 天前
抓包鹰抓取系统 App 的流量,从底层读明文
网络协议·计算机网络·网络安全·adb·https·udp
lemon_linaa1 天前
PentAGI 自动化渗透测试工具试用
测试工具·开源·自动化·安全性测试
2501_915106321 天前
Python爬虫从零开始:七天掌握HTTP协议、数据解析与反爬策略
android·ios·小程序·https·uni-app·iphone·webview
无糖可乐没有灵魂1 天前
Security ❀ Https TLS抓包操作与解密配置
网络协议·http·https
就叫年华吧丶1 天前
Puppeteer 运行一段时间后报 `net::ERR_BLOCKED_BY_CLIENT`:一次 Chromium HTTPS 自动升级问题的完整排查
网络协议·http·https·puppeteer·chromium