Chrome扩展开发涉及到的功能很多,但有些功能目前还未必用到,而且以后可能用的也比较少,所以为了加快学习速度,决定将这种内容快速浏览一遍,并简单整理到该文档中。
1、书签管理
Chrome为开发者提供了添加、分类(书签文件夹)和排序等方法,用来操作书签。同时也提供了读取书签的方法。要在扩展中操作书签,需要在manifest文件中声明bookmarks权限:
"permissions": ["bookmarks"]书签对象的数据结构,共包含8个属性:
id, parentId, index, url, title, dateAdded, dateGroupModified, children书签的操作包括:创建书签、创建书签分类、调整书签位置、更新书签、移除书签、获取书签内容、书签事件监控等。
2、历史记录管理
Chrome提供了history接口,允许扩展对用户的历史记录进行管理。
首先声明权限:
"permissions": ["history"]Chrome管理历史记录的方法包括:
》search:查询历史记录
》getVisits:查询对指定URL的访问结果
》addUrl:添加历史记录
》deleteUrl:删除历史记录
》deleteRange:删除一段时间内的历史记录
》deleteAll:删除所有历史记录
另外,Chrome提供了两个事件onVisited和onVisitRemoved,分别用于监听用户访问历史记录和用户删除历史记录的事件。
3、管理扩展和应用
Chrome提供了management接口用来管理Chrome扩展和应用。
4、Override Pages
Chrome支持自定义的页面替换相应的Chrome默认页面,这就是override pages。目前支持替换的页面包含Chrome的书签页面、历史记录页面和新标签页面。
5、下载功能
Chrome提供了downloads API,扩展可以通过此API管理浏览器的下载功能,执行包括暂停、搜索和取消在内的各种操作。
6、网络请求
Chrome提供了较为完整的方法,供扩展程序分析、阻塞及更改网络请求,同时也提供了一系列较为全面的监听事件,以监听整个网络请求生命周期的各个阶段。在网络请求的整个生命周期内,所触发事件的时间顺序包括:

7、代理功能
代理可以让用户通过代理服务器浏览网络资源,以达到匿名访问的目的。
Chrome提供了代理设置管理接口,可以让扩展更加智能的进行代理设置。
8、系统信息
Chrome提供了用于获取系统CPU、内存和存储设备信息的API。
=============================================================
作者主页:笑虎(Python爱好者,关注爬虫、数据分析、数据挖掘、数据可视化等)
作者专栏主页:撸代码,学知识 - 知乎专栏
作者GitHub主页:撸代码,学知识 - GitHub
欢迎大家拍砖、提意见。相互交流,共同进步!
==============================================================