【记录】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方法如下:
- 首先,下载Selenium Basic安装程序。您可以从以下链接下载最新版本的Selenium Basic:https://florentbr.github.io/SeleniumBasic/,如果打不开那就打开这个链接https://github.com/florentbr/SeleniumBasic/releases/。

- 下载安装程序exe:

- 运行Selenium Basic安装程序,并按照安装向导的指示进行操作。在安装过程中,您可以选择要安装的浏览器驱动程序,例如ChromeDriver、FirefoxDriver等。(就是一路Accept、next)
- 安装完成后,启动Excel,并在VBA编辑器中选择“工具”菜单,然后选择“引用”。
- 在“可用引用”列表中,找到“Selenium Type Library”并选中该库,然后单击“确定”按钮。这将向您的VBA项目中添加对Selenium Basic的引用。

- 现在,您可以在VBA项目中编写使用Selenium Basic的代码,并运行它。
请注意,如果您使用的是64位版本的Office,您可能需要使用64位版本的Selenium Basic。同样,如果您使用的是Mac或Linux系统,您需要使用相应的Selenium Basic版本。
2 下载webdriver
- 保证浏览器driver 和你的浏览器版本相配,以Chrome为例: ChromeDriver下载地址 - WebDriver for Chrome - Downloads。打开页面,如果你是新版,按指示跳转到另一个页面去下载。

我的是111,所以下载111版本,下载链接。

关于版本怎么查看,找到设置里的关于Chrome就行。

3. 将匹配的driver 复制到 SeleniumBasic 的安装文件夹 ,例如: C:\Users[你的用户名]\AppData\Local\SeleniumBasic

- 下载 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。百度和各类采集站皆不可信,搜索请谨慎鉴别。技术类文章一般都有时效性,本人习惯不定期对自己的博文进行修正和更新,因此请访问出处以查看本文的最新版本。
【记录】Excel 2021|(三)VBA使用Selenium自动登录网页的更多相关文章
- 自动化测试: Selenium 自动登录授权,再 Requests 请求内容
Selenium 自动登录网站.截图及 Requests 抓取登录后的网页内容.一起了解下吧. Selenium: 支持 Web 浏览器自动化的一系列工具和库的综合项目. Requests: 唯一的一 ...
- C# 自动登录网页,浏览页面【转载】
需求:客户的数据同时存在在另外一个不可控的系统中,需要和当前系统同步. 思路:自动登录另外一个系统,然后抓取数据,同步到本系统中. 技术点:模拟用户登录:保存登录状态:抓取数据 /// <sum ...
- MY_使用selenium自动登录126/163邮箱并发送邮件
转自:https://www.cnblogs.com/yin-tao/p/7244082.html 我使用的是python2.7.13+selenium ps:几天之前,我曾多次尝试写这段代码,但是在 ...
- Mac 下安装python3.7 + pip 利用 chrome + chromedriver + selenium 自动打开网页并自动点击访问指定页面
1.安装python3.7https://www.python.org/downloads/release/python-370/选择了这个版本,直接默认下一步 2.安装pipcurl https:/ ...
- python 自动登录网页
语言:python 浏览器:chrome 工具:chrome控制台 #!/usr/bin/python # coding: GBK import urllib,urllib2,httplib,cook ...
- [Python爬虫] Selenium实现自动登录163邮箱和Locating Elements介绍
前三篇文章介绍了安装过程和通过Selenium实现访问Firefox浏览器并自动搜索"Eastmount"关键字及截图的功能.而这篇文章主要简单介绍如何实现自动登录163邮箱,同时 ...
- VBA控制outlook自动发送邮件(转)
使用Excel VBA实现Outlook自动发送邮件 | 在工作上我们都会遇到批量发送邮件的情况,面对重复而规律性的工作,可以使用Excel的VBA实现自动批量化发送邮件.大大减小工作时间,提升工作效 ...
- [Python爬虫] Selenium自动访问Firefox和Chrome并实现搜索截图
前两篇文章介绍了安装,此篇文章算是一个简单的进阶应用吧!它是在Windows下通过Selenium+Python实现自动访问Firefox和Chrome并实现搜索截图的功能. [Pyth ...
- Python3从零开始爬取今日头条的新闻【三、滚动到底自动加载】
Python3从零开始爬取今日头条的新闻[一.开发环境搭建] Python3从零开始爬取今日头条的新闻[二.首页热点新闻抓取] Python3从零开始爬取今日头条的新闻[三.滚动到底自动加载] Pyt ...
- Excel中使用VBA访问Access数据库
VBA访问Access数据库 1. 通用自动化语言VBA VBA(Visual Basic For Application)是一种通用自动化语言,它可以使Excel中的常用操作自动化,还可以创建自定义 ...
随机推荐
- 最新demo版 | 如何0-1开发支付宝小程序之小程序页面功能介绍(三)
前两期讲了小程序开发的准备工作以及前期需要如何调试,今天我们就来介绍下开发一个支付宝小程序页面需要了解哪些信息. 一个小程序页面的整体功能的构成离不开页面展示(AXML).页面样式(ACSS)以及页面 ...
- 运用myabits
要使用 MyBatis, 只需将 mybatis-x.x.x.jar 文件置于类路径(classpath)中即可. 如果使用 Maven 来构建项目,则需将下面的依赖代码置于 pom.xml 文件中: ...
- Convert byte array to short array in C#
Create the short array at half the size of the byte array, and copy the byte data in: short[] sdata ...
- Linux介绍及使用(1)
一.linux介绍 1.Linux是一个免费.开源的操作系统,能多用户.多任务.支持多线程和多CPU的操作系统,相对windows更加稳定,在unix系统的基础上开发的系统: 注解:(1)免费:不要钱 ...
- MySQL - [17] Oracle、SQLServer、MySQL数据类型对比
题记部分 一.数据类型对比 对应关系 (1)整数类型 Oracle的NUMBER(*,0) 对应 SQL Server的INT 和 MySQL的INT Oracle的BIGINT 可能需要映射到SQL ...
- SuperSocket 服务端 和 SuperSocket.ClientEngine 客户端及普通客户端
internal class Program { //static void Main(string[] args) //{ // byte[] arr = new byte[1024]; // 1. ...
- .net core datatable 导出 pdf 支持中文
1.nuget 安装 iTextSharp (V4.1.6) to .NET Core. 2.code public DataTable ToDataTable<T>(IEnumerab ...
- 记vue修改数组属性,dom不发生变化的问题
目录: 目录 目录: 开篇 正确的姿势 为什么 $set 开篇 今天在写vue的时候,出现了一个以前可能没遇到的问题.我利用一个数组记录列表下按钮的启用.禁用状态,但我点击某个列表项按钮后,会修改当前 ...
- mac 触控板 三指拖动
1. 打开系统偏好设置 点击屏幕左上角的苹果图标(),选择"系统设置". 2. 打开指针控制 在系统偏好设置窗口左侧栏中,点击"辅助功能",然后在右侧列表中, ...
- php处理跨域
1.允许所有域名访问 header('Access-Control-Allow-Origin: *'); 2.允许单个域名访问 header('Access-Control-Allow-Origin: ...