使用Excel vba调用浏览器chrome.dll插件,控制网页,运行js代码,实现网页自动化

动作开发 · 999 次浏览
涛涛涛 创建于 2天15小时前

仅说明一下使用方式,插件和使用文档有些大(其实也不大:4MB大小),不好使用动作将其压缩,先不提供动作演示了,有兴趣的可以留言一下(按键精灵里的chrome.dll插件)

1.需要先注册chrome.dll,为vba调用准备
    1.在cmd控制台运行注册  如:   regsvr32 chrome.dll
     
2.使用vba代码调用插件
   1.可以使用vba代码自动启动浏览器,
   2.也可以使用vba代码绑定已启动的浏览器(需要知道启动端口,如:9333)
   3.可以去看一下使用文档说明

Sub 调用chrome()
    '1.前期绑定(引用chromeLib) Set chrome = New chrome
    '2.后期绑定Set chrome = CreateObject("lt.chrome.1")或Set chrome = CreateObject("new:{D1D1E1FB-5CB6-4ABF-B11D-E1C2DCC8F626}")
    
    Dim chrome As Object
    '使用的是后期绑定
    Set chrome = CreateObject("lt.chrome.1")
    '浏览器启动路径,启动浏览器
    dd = "C:\Program Files (x86)\Microsoft\Edge\Application\msedge.exe"
    'aa = chrome.launch(dd, False, "--user-data-dir=c:\user_data")
    aa = chrome.launch(dd, False, "")
    '绑定已启动的浏览器,需要知道启动的浏览器启动端口
    'zx = chrome.bind(9333)
    Debug.Print aa
    
    'Stop便于vba运行调试,调试好了,可以去掉
    Stop
    '获取打开浏览器的所有窗口id
    ss = chrome.get_tab_ids()
    '绑定并激活窗口,为获取数据,运行js代码准备
    a2 = chrome.set_tab(ss)
    '打开指定网页网址
    bb = chrome.Load("https://www.baidu.com")
    ss = chrome.get_tab_ids()
    Debug.Print ss
    
    Stop
    a1 = chrome.get_title()
    Debug.Print a1
    '模拟键盘向网页CSS文本框输入文字  可以优化一些s代码无法正常输入的情况,   模拟键盘输入数据,
    bb = chrome.key_text("#chat-textarea", "chrome浏览器")
    Debug.Print bb


    Stop
    '运行js代码,并获取返回值, arguments[0]为插入字符串参数(需要‘ '包括在内):  文件
    a1 = chrome.exec_js("return document.title+document.location.href+arguments[0]", "'文件'")
    Debug.Print a1

    Stop

'     模拟按键 如 a-z, A-Z, 0-9, F1-F12, Shift, Ctrl, Alt, Enter等,可以模拟按键文件框,优化一些js代码点击无效的情况

'    a1 = chrome.key_press("#element_id", "Enter")

'    a1 = chrome.exec_js("document.querySelector('#textInput').value='文件'", "")
'    上传文件
'    a1 = chrome.upload_file("input[type=file]", "C:/Users/Administrator/Desktop/chm.txt")
'    a1 = chrome.exec_js("document.querySelector('#myForm > button').click()", "")
End Sub

涛涛涛 最后更新于 2025/8/10

回复内容
暂无回复
回复主贴