
CDP&RPA
文章平均质量分 92
CDP是一种基于Chrome DevTools的通信协议,允许开发者通过一套标准化的指令与浏览器交互。通过CDP,开发者可以像使用开发者工具一样,远程对浏览器的各个方面进行操控,包括但不限于页面DOM操作、网络请求拦截、JavaScript调试、性能分析、渲染控制等。
守城小轩
最早的一台计算机是486,在电脑报购买的二手。第一门语言是BASIC,写了一个格式3.5寸软盘的软件。
展开
-
Chromium CDP 开发(十一):为自己的Domain建立custom.pdl 文件
通过本章的学习,我们成功创建了自定义的custom.pdl文件,并将其集成到 Chromium 的构建系统中。这一过程中,我们详细探讨了如何在目录中定义自定义的 CDP 指令,如cdpVersion,并修改了BUILD.gn文件以确保这些指令能够正确编译和生效。通过将自定义 Domain 与现有的 CDP 系统分离开来,开发者不仅实现了功能模块的独立性,还增强了项目的灵活性和可维护性。在后续章节中,我们将进一步探讨如何在代码中实现这些自定义指令的逻辑,以及如何通过调试工具验证其功能是否正常。原创 2025-01-07 09:12:17 · 946 阅读 · 0 评论 -
Chromium CDP 开发(十):Chromium 中增加自己的Domain
建立自定义的 CDP Domain 是为了确保我们的扩展功能能够有序地集成到现有的 Chromium CDP 体系中,而不会对原有的指令和事件产生冲突。在本章中,我们将详细讲解如何分离出独立的 PDL 文件、JSON 配置文件以及对应的 Handler 文件,构建一个全新的、自定义的 CDP Domain。通过独立的 PDL 文件、JSON 配置文件以及 Handler 文件,我们能够将自定义的功能与现有的 CDP 系统隔离开来,从而实现更好的模块化管理和功能扩展。的功能逻辑,并通过事件机制定期发送。原创 2024-12-20 10:11:31 · 710 阅读 · 0 评论 -
Chromium CDP 开发(九):关于CDP的返回值的类型和介绍
首先我们看一下我定义在pdl里的事件parameters然后我们编译后就可以开始准备我的事件发送了首先我们需要了解一下事件的发送方式,在CDP的handler构造时从上层的agent管理会传递一个然后我们可以通过 pdl自动生成的类中的这个Frontend实例里会包含所有的这个doman下的事件发送方法,比如我们定义的timerLog就可以这么发送只要如此简单调用就可以发送时间事件了。原创 2024-12-19 09:12:33 · 1030 阅读 · 0 评论 -
Chromium CDP 开发(七):TimerSend的具体实现
通过本章节的学习,我们完成了在中实现 TimerSend 指令的全过程。我们从头文件声明开始,解决了初次编译中的报错,逐步实现了 TimerSend 的核心功能。与此同时,文章还重点介绍了如何通过来处理可选参数,并详细说明了如何构建符合 CDP 协议的返回值结构。最终,通过编译和测试,开发者能够确保 TimerSend 指令在 CDP 中稳定运行,进一步提高了 Chromium 开发工具的定制能力。原创 2024-12-17 09:08:04 · 871 阅读 · 0 评论 -
Chromium CDP 开发(六):注册自己的指令(下)
在本章节中,我们详细介绍了如何通过修改文件来实现对自定义指令和事件的注册,使得 TimerSend 指令和 TimerLog 事件能够在 CDP 中被正确识别和使用。是 CDP 中至关重要的配置文件,它不仅负责注册和声明指令与事件,还为其参数配置提供了结构化的信息。我们讲解了该文件在 CDP 扩展中的关键作用,包括指令与事件的注册、实验性质的标识、参数的配置以及整体结构的灵活性。通过将 TimerSend 指令添加到include节点,以及 TimerLog 事件注册到。原创 2024-12-07 09:18:51 · 1216 阅读 · 0 评论 -
Chromium CDP 开发(五):注册自己的指令(中)
例如,使用来声明一个新的CDP指令。在CDP中,有些指令可能会带有前缀,这表示这些指令和事件尚处于实验阶段。这样的标记提醒开发者,这些功能可能不稳定,使用时需要谨慎。在PDL中,parameters部分用于定义指令所需的输入参数。如果某个参数前面标有optional,这意味着该参数是可选的。在C++实现中,如果指令没有提供这些可选参数,将会生成一个参数包装。这种灵活的设计允许指令在没有参数的情况下被调用,增强了功能的适用性。原创 2024-12-06 09:06:43 · 1158 阅读 · 0 评论 -
Chromium CDP 开发(四):注册自己的指令(上)
本章节详细介绍了如何通过修改文件来扩展 Chromium 的 CDP 功能,增加自定义的 TimerSend 指令和 TimerLog 事件。通过使用 PDL(Protocol Description Language),我们能够定义这些指令和事件的结构、参数类型以及返回值,从而实现精细的浏览器控制和监控。首先,PDL 文件是定义 CDP 指令和事件的核心,它提供了一种结构化的方式来描述每个功能的细节。原创 2024-11-27 09:14:56 · 1531 阅读 · 0 评论 -
Chromium CDP 开发(三):实现自己CDP的指令
在本章节中,我们详细介绍了如何通过在 Chromium 的 CDP 中实现自定义指令来扩展其功能。具体来说,文章讨论了如何添加 TimerSend 指令和 TimerLog 事件,以创建一个定时器机制,帮助开发者在特定时间间隔内接收事件通知,便于监控应用状态。通过实现这些自定义 CDP 指令,开发者可以更深入地理解 CDP 的工作机制和事件驱动模式,提升浏览器调试、性能监控及自动化测试能力。这不仅增强了开发者对浏览器底层功能的掌控力,也为构建更灵活的 Web 应用提供了强有力的工具。在。原创 2024-11-27 09:12:55 · 1326 阅读 · 0 评论 -
Chromium CDP 开发(二):CDP开发相关文件
本文详细介绍了 Chromium 开发工具协议(CDP)相关的三类核心文件:CDP 指令描述文件、访问配置文件以及实现文件。首先,CDP 指令描述文件(browser_protocol.pdl)通过使用协议描述语言(PDL)定义了 CDP 的命令、事件及其参数类型,支持代码的自动生成,极大简化了开发者与浏览器的交互流程。其结构化描述提供了高可读性和可扩展性。其次,CDP 访问配置文件。原创 2024-11-26 09:20:51 · 981 阅读 · 0 评论 -
Chromium CDP 开发(一):CDP简介
Chromium CDP 是一个功能强大且灵活的开发工具。通过CDP,开发者能够实现对浏览器的全面控制,无论是页面调试、网络监控,还是性能分析、自动化测试,CDP 都能提供相应的支持。对于想要深入掌握浏览器内部工作机制的开发者来说,CDP是一个不可或缺的工具。建议开发者在开发过程中,充分利用官方文档和社区资源,不断学习和分享经验,以提高自身的技术水平。通过持续探索,开发者可以使用CDP 实现对浏览器的终极控制,创造出更加丰富和高效的Web 应用体验。原创 2024-11-26 09:17:50 · 1315 阅读 · 0 评论