Chrome扩展开发05--其他知识点

213 阅读2分钟
原文链接: zhuanlan.zhihu.com

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

欢迎大家拍砖、提意见。相互交流,共同进步!

==============================================================