易语言资源网 - 做最全的易语言资源下载社区
精易论坛授权登录

【谷歌填表】【跨框架】Chrome谷歌浏览器外部填表二次开发   [复制链接]

    2020-01-08 10:27:04
    2019开源大赛(第四届)
    易语言资源网
    19846 次浏览
    来源链接

先上最初开源作者链接黑猫よ__https://bbs.125.la/forum.php?mod=viewthread&tid=14062322&highlight=Chrome

抛砖引玉,也来分享一下开发经验,Chrome谷歌浏览器外部填表模块的二次开发封装,用卓越的"开源"精神思想,在原作者模块源码

中插入了一个程序集。然后实现了我的异想天开。。。。


二次开发未改动原作者代码,只是另外封装了一下,使用更加便捷而已,另外添加了以下功能:

1、跨框架填表(填表标配)

2、自定义标签ID(我觉得谷歌返回的ID串太抽象了,自定义多好。。)

3、可视化元素定位(表单页很长?想实时定位元素位置进行模拟操作?想自动滚动窗口到元素的位置?)

4、可视化模拟曲线(渐开线、贝塞尔曲线)水平有限,模拟OK。。

5、没了,本想添加Ajax Hook 但是页面一跳转,又要重新HOOK,JS实现的感觉鸡肋。用套框架法可以解决,但是麻烦(懒) 

 

 

 

 

注意的部分:

二次封装的模块,结束会关闭所有谷歌浏览器进程,介意的自己修改一下。

创建谷歌浏览器时,要求输入谷歌安装路径。如果点“打开浏览器”按钮打不开,自己双击该按钮,在源码中修改路径为,你电脑上谷歌浏览器安装的路径。

源码是模块源码,但调试环境时会弹出调试窗口,它可以直接编译成模块使用

包含运行库, VC++ Runtime Package 文件夹,如果出现XXX找不到之类的错误,将该文件夹里的DLL文件全部放到源码目录

包含谷歌浏览器开发版  chromium-sync.exe  如果安装了谷歌浏览器则忽略,没有安装的安装这个咯

模块源码:IChrome Link.e   基本上是原作者原封不动的附件状态过来的。

我的调试代码写在模块中,原作者的调试代码原封不动为(Chrome 远程调试工具.e)。如果想用未二次开发的部分,请参考原作者调试代码。


发布携带:

DATA----目录

IChromeLink.dll

Komari32.dll

VC++ Runtime Package 目录中所有DLL文件拷贝到程序运行目录。(运行库,如果安装了运行库则忽略,但是建议一同发布,免得出错更麻烦)


关于跨框架问题:目前跨框架是通过JS枚举 ifrom 标签实现,但现在有网页仍用 from 标签。内置跨框架只枚举了主页面以下的子框架,如果是子框架中的框架则不支持,没有进行该枚举。这个可以自己使用  执行JS脚本实现



点我下载 (已有 4341 次下载)

引用模块


源码文件名 模块文件名
Chrome 远程调试工具.e
精易模块.ec
IChromeLink Library.ec


引用支持库


源码文件名 支持库文件名 支持库标识
Chrome 远程调试工具.e 系统核心支持库 5.3 d09f2340818511d396f6aaf844c7e325
扩展界面支持库二 2.0 AF6AD80AA4244A59AFB3D83ECF5173CC
应用接口支持库 3.1 F7FC1AE45C5C4758AF03EF19F18A395D
特殊功能支持库 3.1 A512548E76954B6E92C21055517615B0
代码编辑框支持库 2.2 {E5E6A8E356A843bd94609DDD678BD6D8}
扩展界面支持库一 2.0 27bb20fdd3e145e4bee3db39ddd6e64c
IChrome Link.e 系统核心支持库 5.3 d09f2340818511d396f6aaf844c7e325
多线程支持库 2.0 5F99C1642A2F4e03850721B4F5D7C3F8
应用接口支持库 3.1 F7FC1AE45C5C4758AF03EF19F18A395D
特殊功能支持库 3.1 A512548E76954B6E92C21055517615B0
正则表达式支持库 2.0 684944CB04624eb7BD5412A519421D34
通用对象支持库 2.0 {A068799B-7551-46b9-8CA8-EEF8357AFEA4}
扩展界面支持库一 2.0 27bb20fdd3e145e4bee3db39ddd6e64c


[错误报告]   上一篇:股票交易协yi源码【安卓协yi】...     下一篇:取QQkey登录空间和邮箱...