CN114356433B - 一种代码注入式浏览器插件自动运行方法及系统 - Google Patents
一种代码注入式浏览器插件自动运行方法及系统 Download PDFInfo
- Publication number
- CN114356433B CN114356433B CN202111393540.7A CN202111393540A CN114356433B CN 114356433 B CN114356433 B CN 114356433B CN 202111393540 A CN202111393540 A CN 202111393540A CN 114356433 B CN114356433 B CN 114356433B
- Authority
- CN
- China
- Prior art keywords
- plug
- browser
- automation
- rpa
- code
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000002347 injection Methods 0.000 title claims abstract description 30
- 239000007924 injection Substances 0.000 title claims abstract description 30
- 238000000034 method Methods 0.000 title claims abstract description 21
- 238000004891 communication Methods 0.000 claims abstract description 38
- 238000012795 verification Methods 0.000 description 2
- 230000007547 defect Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
Landscapes
- Stored Programmes (AREA)
Abstract
本发明提供了计算机技术领域的一种代码注入式浏览器插件自动运行方法及系统,方法包括如下步骤:步骤S10、创建一携带自动化代码的RPA以及一插件;步骤S20、在浏览器中载入所述插件,获取浏览器的调试权限以及所述插件与RPA的通信权限;步骤S30、所述RPA基于调试权限打开插件以及开发者工具,通过所述开发者工具将自动化代码注入插件,得到自动化插件;步骤S40、所述自动化插件基于通信权限接收RPA发送的操作指令,进而执行自动化操作。本发明的优点在于:极大的提升了浏览器插件的适用范围以及功能性。
Description
技术领域
本发明涉及计算机技术领域,特别指一种代码注入式浏览器插件自动运行方法及系统。
背景技术
随着网上购物的兴起,涌现了大量的电商平台,也出现了大量以电商平台为销售渠道的商家,商家为了获取电商平台的数据报表来进行经营管理,需要借助第三方插件(例如谷歌商店的插件),但这些第三方插件的操作都是傻瓜式的,需要点击多次不同的按钮,而操作过程单调且基本不变,导致工作效率低下,因此产生了自动化操作这些第三方插件的需求。
浏览器上架的第三方插件已经按照预设规则压缩打包成文件,且出于安全性考虑,为每个第三方插件配置了权限清单,且仅能通过控制鼠标实现自动化,存在如下缺点:1、鼠标移动的坐标受限于屏幕分辨率和浏览器窗口大小;2、操作权限受权限清单的限制,仅能进行一些常规操作。
因此,如何提供一种代码注入式浏览器插件自动运行方法及系统,实现提升浏览器插件的适用范围以及功能性,成为一个亟待解决的技术问题。
发明内容
本发明要解决的技术问题,在于提供一种代码注入式浏览器插件自动运行方法及系统,实现提升浏览器插件的适用范围以及功能性。
第一方面,本发明提供了一种代码注入式浏览器插件自动运行方法,包括如下步骤:
步骤S10、创建一携带自动化代码的RPA以及一插件;
步骤S20、在浏览器中载入所述插件,获取浏览器的调试权限以及所述插件与RPA的通信权限;
步骤S30、所述RPA基于调试权限打开插件以及开发者工具,通过所述开发者工具将自动化代码注入插件,得到自动化插件;
步骤S40、所述自动化插件基于通信权限接收RPA发送的操作指令,进而执行自动化操作。
进一步地,所述步骤S10中,所述自动化代码基于代码编辑器创建,用于描述浏览器的自动化操作流程;所述插件用于承载所述自动化代码以进行自动化操作;所述RPA用于向自动化插件发送操作指令。
进一步地,所述步骤S20具体为:
在浏览器的内存中载入所述插件后,通过浏览器接口将浏览器的调试权限以及插件与RPA的通信权限写入所述插件携带的权限清单,以获取所述调试权限以及通信权限。
进一步地,所述步骤S30具体为:
浏览器登录网站后,运行所述RPA,所述RPA基于调试权限打开插件以及开发者工具,通过所述开发者工具将自动化代码注入插件的Content Script和Background Script中,得到自动化插件,并向所述RPA反馈代码注入成功的消息。
进一步地,所述步骤S40具体为:
所述RPA基于通信权限向自动化插件发送操作指令,所述自动化插件接收并解析操作指令,基于所述操作指令的指令类型执行对应的自动化操作。
第二方面,本发明提供了一种代码注入式浏览器插件自动运行系统,包括如下模块:
RPA编排模块,用于创建一携带自动化代码的RPA以及一插件;
浏览器客户端模块,用于在浏览器中载入所述插件,获取浏览器的调试权限以及所述插件与RPA的通信权限;
自动化代码注入模块,用于所述RPA基于调试权限打开插件以及开发者工具,通过所述开发者工具将自动化代码注入插件,得到自动化插件;
自动化操作模块,用于所述自动化插件基于通信权限接收RPA发送的操作指令,进而执行自动化操作。
进一步地,所述RPA编排模块中,所述自动化代码基于代码编辑器创建,用于描述浏览器的自动化操作流程;所述插件用于承载所述自动化代码以进行自动化操作;所述RPA用于向自动化插件发送操作指令。
进一步地,所述浏览器客户端模块具体为:
在浏览器的内存中载入所述插件后,通过浏览器接口将浏览器的调试权限以及插件与RPA的通信权限写入所述插件携带的权限清单,以获取所述调试权限以及通信权限。
进一步地,所述自动化代码注入模块具体为:
浏览器登录网站后,运行所述RPA,所述RPA基于调试权限打开插件以及开发者工具,通过所述开发者工具将自动化代码注入插件的Content Script和Background Script中,得到自动化插件,并向所述RPA反馈代码注入成功的消息。
进一步地,所述自动化操作模块具体为:
所述RPA基于通信权限向自动化插件发送操作指令,所述自动化插件接收并解析操作指令,基于所述操作指令的指令类型执行对应的自动化操作。
本发明的优点在于:
1、通过创建自动化代码和插件,利用RPA调用开发者工具将自动化代码注入插件中以得到自动化插件,进而通过自动化插件进行自动化操作,即自动化操作依赖于自动化代码,与鼠标移动的坐标无关,克服了传统上屏幕分辨率和浏览器窗口大小的限制,进而极大的提升了浏览器插件的适用范围。
2、通过将自动化代码注入插件的Content Script(内容脚本)和BackgroundScript(背景脚本)中,进而赋予了更大的自动化能力,且自动化代码可按需调整,加上RPA支持热更新,进而极大的提升了浏览器插件的功能性。
3、通过将插件携带的权限清单读取到内存中,在内存中进行调试权限以及通信权限的申请操作,没有破坏插件的原文件,侵入性小,进而极大的提升了浏览器插件运行的安全性。
附图说明
下面参照附图结合实施例对本发明作进一步的说明。
图1是本发明一种代码注入式浏览器插件自动运行方法的流程图。
图2是本发明一种代码注入式浏览器插件自动运行系统的结构示意图。
图3是本发明的流程示意图。
具体实施方式
本申请实施例中的技术方案,总体思路如下:将自动化代码注入插件中得到自动化插件,让自动化操作依赖于自动化代码,与鼠标移动的坐标无关,克服屏幕分辨率和浏览器窗口大小的限制,以提升浏览器插件的适用范围;将自动化代码注入插件的内容脚本和背景脚本中、按需调整自动化代码、对RPA进行热更新,以提升浏览器插件的功能性。
请参照图1至图3所示,本发明一种代码注入式浏览器插件自动运行方法的较佳实施例,包括如下步骤:
步骤S10、创建一携带自动化代码的RPA以及一插件(机器人流程自动化应用程序);所述插件即要实现自动化的第三方插件;
步骤S20、在浏览器中载入所述插件,获取浏览器的调试权限以及所述插件与RPA的通信权限;
步骤S30、所述RPA基于调试权限打开插件以及开发者工具(devtools),通过所述开发者工具将自动化代码注入插件,得到自动化插件;
步骤S40、所述自动化插件基于通信权限接收RPA发送的操作指令,进而执行自动化操作。
所述步骤S10中,所述自动化代码基于代码编辑器创建,用于描述浏览器的自动化操作流程;所述插件用于承载所述自动化代码以进行自动化操作;所述RPA用于向自动化插件发送操作指令。
所述步骤S20具体为:
在浏览器的内存中载入所述插件后,通过浏览器接口将浏览器的调试权限以及插件与RPA的通信权限写入所述插件携带的权限清单,以获取所述调试权限以及通信权限。
具体实施时,需要先向浏览器发送所述调试权限和通信权限的权限获取申请,浏览器对所述权限获取申请进行验证并验证通过后,允许对内存中的所述权限清单进行修改,进而获取所述调试权限和通信权限。
所述步骤S30具体为:
浏览器登录网站后,运行所述RPA,所述RPA基于调试权限打开插件以及开发者工具,通过所述开发者工具将自动化代码注入插件的Content Script和Background Script中,得到自动化插件,并向所述RPA反馈代码注入成功的消息。
Content Script是在Web页面内运行的javascript脚本,通过使用标准的DOM,可以获取浏览器所访问页面的详细信息并进行修改;Background Script一旦运行,是常驻在后台的;因此,将所述自动化代码注入插件的Content Script和Background Script,能赋予了更大的自动化能力。
所述步骤S40具体为:
所述RPA基于通信权限向自动化插件发送操作指令,所述自动化插件接收并解析操作指令,基于所述操作指令的指令类型执行对应的自动化操作,即所述自动化代码可包含不同类型的自动化操作流程。
本发明一种代码注入式浏览器插件自动运行系统的较佳实施例,包括如下模块:
RPA编排模块,用于创建一携带自动化代码的RPA以及一插件(机器人流程自动化应用程序);所述插件即要实现自动化的第三方插件;
浏览器客户端模块,用于在浏览器中载入所述插件,获取浏览器的调试权限以及所述插件与RPA的通信权限;
自动化代码注入模块,用于所述RPA基于调试权限打开插件以及开发者工具(devtools),通过所述开发者工具将自动化代码注入插件,得到自动化插件;
自动化操作模块,用于所述自动化插件基于通信权限接收RPA发送的操作指令,进而执行自动化操作。
所述RPA编排模块中,所述自动化代码基于代码编辑器创建,用于描述浏览器的自动化操作流程;所述插件用于承载所述自动化代码以进行自动化操作;所述RPA用于向自动化插件发送操作指令。
所述浏览器客户端模块具体为:
在浏览器的内存中载入所述插件后,通过浏览器接口将浏览器的调试权限以及插件与RPA的通信权限写入所述插件携带的权限清单,以获取所述调试权限以及通信权限。
具体实施时,需要先向浏览器发送所述调试权限和通信权限的权限获取申请,浏览器对所述权限获取申请进行验证并验证通过后,允许对内存中的所述权限清单进行修改,进而获取所述调试权限和通信权限。
所述自动化代码注入模块具体为:
浏览器登录网站后,运行所述RPA,所述RPA基于调试权限打开插件以及开发者工具,通过所述开发者工具将自动化代码注入插件的Content Script和Background Script中,得到自动化插件,并向所述RPA反馈代码注入成功的消息。
Content Script是在Web页面内运行的javascript脚本,通过使用标准的DOM,可以获取浏览器所访问页面的详细信息并进行修改;Background Script一旦运行,是常驻在后台的;因此,将所述自动化代码注入插件的Content Script和Background Script,能赋予了更大的自动化能力。
所述自动化操作模块具体为:
所述RPA基于通信权限向自动化插件发送操作指令,所述自动化插件接收并解析操作指令,基于所述操作指令的指令类型执行对应的自动化操作,即所述自动化代码可包含不同类型的自动化操作流程。
综上所述,本发明的优点在于:
1、通过创建自动化代码和插件,利用RPA调用开发者工具将自动化代码注入插件中以得到自动化插件,进而通过自动化插件进行自动化操作,即自动化操作依赖于自动化代码,与鼠标移动的坐标无关,克服了传统上屏幕分辨率和浏览器窗口大小的限制,进而极大的提升了浏览器插件的适用范围。
2、通过将自动化代码注入插件的Content Script(内容脚本)和BackgroundScript(背景脚本)中,进而赋予了更大的自动化能力,且自动化代码可按需调整,加上RPA支持热更新,进而极大的提升了浏览器插件的功能性。
3、通过将插件携带的权限清单读取到内存中,在内存中进行调试权限以及通信权限的申请操作,没有破坏插件的原文件,侵入性小,进而极大的提升了浏览器插件运行的安全性。
虽然以上描述了本发明的具体实施方式,但是熟悉本技术领域的技术人员应当理解,我们所描述的具体的实施例只是说明性的,而不是用于对本发明的范围的限定,熟悉本领域的技术人员在依照本发明的精神所作的等效的修饰以及变化,都应当涵盖在本发明的权利要求所保护的范围内。
Claims (10)
1.一种代码注入式浏览器插件自动运行方法,其特征在于:包括如下步骤:
步骤S10、创建一携带自动化代码的RPA以及一插件;
步骤S20、在浏览器中载入所述插件,获取浏览器的调试权限以及所述插件与RPA的通信权限;
步骤S30、所述RPA基于调试权限打开插件以及开发者工具,通过所述开发者工具将自动化代码注入插件,得到自动化插件;
步骤S40、所述自动化插件基于通信权限接收RPA发送的操作指令,进而执行自动化操作。
2.如权利要求1所述的一种代码注入式浏览器插件自动运行方法,其特征在于:所述步骤S10中,所述自动化代码基于代码编辑器创建,用于描述浏览器的自动化操作流程;所述插件用于承载所述自动化代码以进行自动化操作;所述RPA用于向自动化插件发送操作指令。
3.如权利要求1所述的一种代码注入式浏览器插件自动运行方法,其特征在于:所述步骤S20具体为:
在浏览器的内存中载入所述插件后,通过浏览器接口将浏览器的调试权限以及插件与RPA的通信权限写入所述插件携带的权限清单,以获取所述调试权限以及通信权限。
4.如权利要求1所述的一种代码注入式浏览器插件自动运行方法,其特征在于:所述步骤S30具体为:
浏览器登录网站后,运行所述RPA,所述RPA基于调试权限打开插件以及开发者工具,通过所述开发者工具将自动化代码注入插件的Content Script和Background Script中,得到自动化插件,并向所述RPA反馈代码注入成功的消息。
5.如权利要求1所述的一种代码注入式浏览器插件自动运行方法,其特征在于:所述步骤S40具体为:
所述RPA基于通信权限向自动化插件发送操作指令,所述自动化插件接收并解析操作指令,基于所述操作指令的指令类型执行对应的自动化操作。
6.一种代码注入式浏览器插件自动运行系统,其特征在于:包括如下模块:
RPA编排模块,用于创建一携带自动化代码的RPA以及一插件;
浏览器客户端模块,用于在浏览器中载入所述插件,获取浏览器的调试权限以及所述插件与RPA的通信权限;
自动化代码注入模块,用于所述RPA基于调试权限打开插件以及开发者工具,通过所述开发者工具将自动化代码注入插件,得到自动化插件;
自动化操作模块,用于所述自动化插件基于通信权限接收RPA发送的操作指令,进而执行自动化操作。
7.如权利要求6所述的一种代码注入式浏览器插件自动运行系统,其特征在于:所述RPA编排模块中,所述自动化代码基于代码编辑器创建,用于描述浏览器的自动化操作流程;所述插件用于承载所述自动化代码以进行自动化操作;所述RPA用于向自动化插件发送操作指令。
8.如权利要求6所述的一种代码注入式浏览器插件自动运行系统,其特征在于:所述浏览器客户端模块具体为:
在浏览器的内存中载入所述插件后,通过浏览器接口将浏览器的调试权限以及插件与RPA的通信权限写入所述插件携带的权限清单,以获取所述调试权限以及通信权限。
9.如权利要求6所述的一种代码注入式浏览器插件自动运行系统,其特征在于:所述自动化代码注入模块具体为:
浏览器登录网站后,运行所述RPA,所述RPA基于调试权限打开插件以及开发者工具,通过所述开发者工具将自动化代码注入插件的Content Script和Background Script中,得到自动化插件,并向所述RPA反馈代码注入成功的消息。
10.如权利要求6所述的一种代码注入式浏览器插件自动运行系统,其特征在于:所述自动化操作模块具体为:
所述RPA基于通信权限向自动化插件发送操作指令,所述自动化插件接收并解析操作指令,基于所述操作指令的指令类型执行对应的自动化操作。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111393540.7A CN114356433B (zh) | 2021-11-23 | 2021-11-23 | 一种代码注入式浏览器插件自动运行方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111393540.7A CN114356433B (zh) | 2021-11-23 | 2021-11-23 | 一种代码注入式浏览器插件自动运行方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114356433A CN114356433A (zh) | 2022-04-15 |
CN114356433B true CN114356433B (zh) | 2023-12-05 |
Family
ID=81095639
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111393540.7A Active CN114356433B (zh) | 2021-11-23 | 2021-11-23 | 一种代码注入式浏览器插件自动运行方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114356433B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118535469A (zh) * | 2024-05-17 | 2024-08-23 | 上海灵曼信息科技有限公司 | 一种基于浏览器插件的前后端调试系统及其使用方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110968359A (zh) * | 2018-09-30 | 2020-04-07 | 北京国双科技有限公司 | 一种启动浏览器插件的方法及装置 |
CN113420201A (zh) * | 2021-06-09 | 2021-09-21 | 湖南大学 | 一种用于浏览器rpa系统的跨域元素定位与树生成方法 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8677505B2 (en) * | 2000-11-13 | 2014-03-18 | Digital Doors, Inc. | Security system with extraction, reconstruction and secure recovery and storage of data |
CN102929656B (zh) * | 2012-09-28 | 2015-11-25 | 北京奇虎科技有限公司 | 使用浏览器中内置ActiveX插件的方法和客户端 |
US11388198B2 (en) * | 2015-10-28 | 2022-07-12 | Qomplx, Inc. | Collaborative database and reputation management in adversarial information environments |
US11604627B2 (en) * | 2020-05-07 | 2023-03-14 | UiPath Inc. | Systems and methods for on-demand provisioning of robotic process automation environments |
-
2021
- 2021-11-23 CN CN202111393540.7A patent/CN114356433B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110968359A (zh) * | 2018-09-30 | 2020-04-07 | 北京国双科技有限公司 | 一种启动浏览器插件的方法及装置 |
CN113420201A (zh) * | 2021-06-09 | 2021-09-21 | 湖南大学 | 一种用于浏览器rpa系统的跨域元素定位与树生成方法 |
Non-Patent Citations (1)
Title |
---|
集成式插件武装谷歌Chrome;倚楼;;电脑爱好者(20);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN114356433A (zh) | 2022-04-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7617486B2 (en) | Method and system to automate software testing using sniffer side and browser side recording and a toolbar interface | |
CN102855142B (zh) | 一种基于ria的客户端框架结构及其实现方法 | |
CN110647471B (zh) | 接口测试用例生成方法、电子装置及存储介质 | |
CN101562618B (zh) | 一种检测网马的方法及装置 | |
CN113420201B (zh) | 一种用于浏览器rpa系统的跨域元素定位与树生成方法 | |
CN106021257A (zh) | 一种支持在线编程的爬虫抓取数据方法、装置及系统 | |
CN113051514B (zh) | 元素的定位方法、装置、电子设备及存储介质 | |
EP3104279B1 (en) | Testing interactive network systems | |
CN110908894B (zh) | 一种基于vuex的可视化报表工具自动化测试方法及装置 | |
CN114356433B (zh) | 一种代码注入式浏览器插件自动运行方法及系统 | |
CN114281680B (zh) | 一种web自动化测试方法及系统 | |
CN112988605B (zh) | 一种实现web应用自动化测试的方法及装置 | |
CN113220566B (zh) | 接口性能测试脚本的生成方法、装置和计算机设备 | |
CN115061912A (zh) | 一种测试用例的生成与测试方法、系统及介质 | |
CN109408763B (zh) | 一种对不同模板的简历进行管理的方法及系统 | |
CN110888709A (zh) | 监控屏的智能操作方法、装置、计算机设备和存储介质 | |
CN111078547A (zh) | 一种python通用app软件自动化测试框架系统 | |
CN113419969A (zh) | 基于浏览器插件的界面自动化成功率保障方法 | |
CN111913889A (zh) | 一种测试系统搭建方法及测试系统 | |
CN110045950A (zh) | 基于nodejs的静态页面开发脚手架方法 | |
CN113778405A (zh) | 一种跨平台app构建方法、装置、系统及介质 | |
CN111857932A (zh) | 一种基于puppeteer用于运维审计系统的web代填方法 | |
CN116382718A (zh) | 代码离线部署方法、装置、计算机设备及存储介质 | |
US20230377309A1 (en) | Methods and systems for automated cross-browser user interface testing | |
CN113590564B (zh) | 数据存储方法、装置、电子设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |