美文网首页大数据 爬虫Python AI Sql
Selenium框架添加CONNECT以抓取https网站

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

作者: SunY7 | 来源:发表于2023-12-28 15:24 被阅读0次
    亿牛云 (5).png

    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
    # 处理抓取到的数据
    

    相关文章

      网友评论

        本文标题:Selenium框架添加CONNECT以抓取https网站

        本文链接:https://www.haomeiwen.com/subject/qqtjndtx.html