【记录】Excel 2021|(三)VBA使用Selenium自动登录网页

1 安装 Selenium Basic

首先需要安装Selenium Basic,才能在工具栏中找到Selenium Type Library

在安装Selenium Basic之前,请确保您的计算机上已安装Visual Basic for Applications(VBA)。VBA是Microsoft Office应用程序(如Excel、Word等)中使用的宏语言。

安装Selenium Basic方法如下:

  1. 首先,下载Selenium Basic安装程序。您可以从以下链接下载最新版本的Selenium Basic:https://florentbr.github.io/SeleniumBasic/,如果打不开那就打开这个链接https://github.com/florentbr/SeleniumBasic/releases/
    在这里插入图片描述
  2. 下载安装程序exe:
    在这里插入图片描述
  3. 运行Selenium Basic安装程序,并按照安装向导的指示进行操作。在安装过程中,您可以选择要安装的浏览器驱动程序,例如ChromeDriver、FirefoxDriver等。(就是一路Accept、next)
  4. 安装完成后,启动Excel,并在VBA编辑器中选择“工具”菜单,然后选择“引用”。
  5. 在“可用引用”列表中,找到“Selenium Type Library”并选中该库,然后单击“确定”按钮。这将向您的VBA项目中添加对Selenium Basic的引用。
    在这里插入图片描述
  6. 现在,您可以在VBA项目中编写使用Selenium Basic的代码,并运行它。

请注意,如果您使用的是64位版本的Office,您可能需要使用64位版本的Selenium Basic。同样,如果您使用的是Mac或Linux系统,您需要使用相应的Selenium Basic版本。

2 下载webdriver

参考:Selenium for VBA的配置-知乎-语言堂

  1. 保证浏览器driver 和你的浏览器版本相配,以Chrome为例: ChromeDriver下载地址 - WebDriver for Chrome - Downloads。打开页面,如果你是新版,按指示跳转到另一个页面去下载。
    在这里插入图片描述
    我的是111,所以下载111版本,下载链接
    在这里插入图片描述
    关于版本怎么查看,找到设置里的关于Chrome就行。

在这里插入图片描述
3. 将匹配的driver 复制到 SeleniumBasic 的安装文件夹 ,例如: C:\Users[你的用户名]\AppData\Local\SeleniumBasic
在这里插入图片描述

  1. 下载 MS .Net 3.5 : Download Microsoft .NET Framework 3.5 from Official Microsoft Download Center
    注意:点开了就能下载,如果没弹出下载说明网络有问题,可以尝试点击手动下载。
    在这里插入图片描述
    这一步很重要,没有.Net,运行VBA的时候会出现Automation Error的报错。
    在这里插入图片描述

3 自动登录

安装好1、2步骤后,重新打开Excel程序,然后打开宏编辑窗口:

在这里插入图片描述
一个简单的脚本如下:

Sub LoginToWebsite()
    Dim driver As New ChromeDriver
    Dim URL As String
    Dim MyLogin As String
    Dim MyPassword As String
    
    '设置网站登录页面的URL
    URL = "http://10.12.xxx.xx/ui/sessions/signin"
    
    '设置登录信息
    MyLogin = "myname"
    MyPassword = "mypasswd"
    
    '打开Chrome浏览器
    driver.Start "Chrome"
    
    '访问登录页面
    driver.Get URL
    
    '输入用户名和密码
    driver.FindElementById("username").SendKeys MyLogin
    driver.FindElementById("passwd").SendKeys MyPassword
    
    '提交登录表单
    driver.FindElementById("signin_button").Click
    
    '等待页面加载
    driver.Wait 5000
    
    '检查是否成功登录
    If InStr(driver.PageSource, "仪表板") > 0 Then
        MsgBox "登录成功!"
    Else
        MsgBox "登录失败!"
    End If
    
    '关闭浏览器
    driver.Quit
End Sub

只要在网页上找到输入框的id,再把账号密码填进去就完事了。

在这里插入图片描述

本账号所有文章均为原创,欢迎转载,请注明文章出处:https://blog.csdn.net/qq_46106285/article/details/129613315。百度和各类采集站皆不可信,搜索请谨慎鉴别。技术类文章一般都有时效性,本人习惯不定期对自己的博文进行修正和更新,因此请访问出处以查看本文的最新版本。

评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

shandianchengzi

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

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

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

打赏作者

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

抵扣说明:

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

余额充值