VBGood网站全文搜索 Google

搜索VBGood全站网页(全文搜索)

VB爱好者乐园(VBGood)

 找回密码
 立即注册
搜索
查看: 46358|回复: 13

分享:VB6 调用 chrome(谷歌浏览器)的方法

[复制链接]
发表于 2018-12-20 21:00:54 | 显示全部楼层 |阅读模式
微软放弃了IE览器,又在2018年12月宣布桌面版Edge浏览器将采用Chromium内核,VB6调用IE是如此的方便,真是可惜了。

VB6调用chrome(谷歌浏览器)的方法:
1,通过Selenium BASIC调用,下载地址(普通方法无法下载,被墙了):https://github.com/florentbr/SeleniumBasic/releases。安装后可以很方便的调用IE、火狐、谷歌、Edge等浏览器。(带示例)
代码如下:
Dim w As New WebDriver
w.Start“chrome”,“http://www.vbgood.com
这样就可以打开浏览器对网页元素操作了。

原理就是利用Selenium的强大功能,操作各种浏览器。

如果抛开Selenium,自己对浏览器操作,需要下载一个chromedriver.exe的文件,放到浏览器安装目录,然后POST数据即可操作。(代码略过)

2、通过iMacros 也可以对浏览器操作。必须是最新版12(带示例),才支持chrome浏览器。亲测有效
Dim iim1, iret
set iim1= CreateObject ("imacros")
macro = "URL GOTO=http://www.baidu.com/      " + vbNewLine
iret =  iim1.iimOpen ("-cr")'指定浏览器为:chrome,"-ie"为IE,"-fx"为火狐
iplay = iim1.iimPlayCode(macro)

评分

参与人数 3人气 +4 收起 理由
秋枫萧萧 + 1 很给力
rsice + 1 很给力
huangshanvs + 2 赞一个

查看全部评分

 楼主| 发表于 2020-1-5 14:08:48 | 显示全部楼层
xtaxa 发表于 2020-1-5 13:27
click()可行,但是 msgbox(sbrowser1.RunJs("return...) vb提示“类型不匹配”

到这个帖子去看详细教程用法,全网最详细的教程
http://club.excelhome.net/thread-1452021-1-1.html

点评

谢谢,我去了解一下:handshake  发表于 2020-1-11 10:55
回复 支持 1 反对 0

使用道具 举报

发表于 2018-12-22 12:44:59 | 显示全部楼层
就是内核版本比较老,建议vb.net CefSharp。
回复 支持 反对

使用道具 举报

发表于 2018-12-30 11:33:05 | 显示全部楼层
微软居然用Chromium内核,真是一切皆有可能
回复 支持 反对

使用道具 举报

发表于 2018-12-30 13:12:42 | 显示全部楼层
新版本都,好像都有问题,试了一下chorme肯firefox
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-12-31 19:29:37 | 显示全部楼层
Selenium BASIC其实只是给Selenium加了一个壳,如果你的浏览器版本太高,就需要下载与浏览器对应版本的驱动才行。
下载完后解压,替换掉安装目录中的同名文件即可。
这段时间我在网上还找到一个给Miniblink浏览器组件(Miniblink)加了一个壳的,然后VB6也可以方便调用,网址:http://tieba.baidu.com/p/5884597230


与浏览器对应版本的驱动下载地址:
http://chromedriver.storage.googleapis.com/index.html
附chromedriver与chrome的对应关系表:
chromedriver版本        支持的Chrome版本
v2.40        v66-68
v2.39        v66-68
v2.38        v65-67
v2.37        v64-66
v2.36        v63-65
v2.35        v62-64
v2.34        v61-63
v2.33        v60-62
v2.32        v59-61
v2.31        v58-60
v2.30        v58-60
v2.29        v56-58
v2.28        v55-57
v2.27        v54-56
v2.26        v53-55
v2.25        v53-55
v2.24        v52-54
v2.23        v51-53
v2.22        v49-52
v2.21        v46-50
v2.20        v43-48
v2.19        v43-47
v2.18        v43-46
v2.17        v42-43
v2.13        v42-45
v2.15        v40-43
v2.14        v39-42
v2.13        v38-41
v2.12        v36-40
v2.11        v36-40
v2.10        v33-36
v2.9        v31-34
v2.8        v30-33
v2.7        v30-33
v2.6        v29-32
v2.5        v29-32
v2.4        v29-32
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-12-31 19:37:28 | 显示全部楼层
Selenium为什么能驱动浏览器,其实核心就在ChromeDriver这个驱动上,这是一个可执行文件,下载这个文件后运行它,就会打开一个端口,通过向指定端口post数据,就能控制浏览器,亲测可以,最好自己找个JSON的类,因为数据提交的是这种类型。
如果想绕过Selenium直接用POST数据,可以看一下相关的接口规范,网址如下:
https://github.com/SeleniumHQ/se ... -terms-and-concepts
回复 支持 反对

使用道具 举报

发表于 2019-4-4 09:26:28 | 显示全部楼层
让我又看到VB6的新希望!
回复 支持 反对

使用道具 举报

发表于 2020-1-5 13:27:25 | 显示全部楼层
click()可行,但是 msgbox(sbrowser1.RunJs("return...) vb提示“类型不匹配”
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

文字版|手机版|小黑屋|VBGood  

GMT+8, 2023-3-24 18:33

VB爱好者乐园(VBGood)
快速回复 返回顶部 返回列表