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提供了較為完整的方法,供擴充套件程式分析、阻塞及更改網路請求,同時也提供了一系列較為全面的監聽事件,以監聽整個網路請求生命週期的各個階段。在網路請求的整個生命週期內,所觸發事件的時間順序包括:

Chrome擴充套件開發05--其他知識點

Chrome擴充套件開發05--其他知識點

7、代理功能

代理可以讓使用者透過代理伺服器瀏覽網路資源,以達到匿名訪問的目的。

Chrome提供了代理設定管理介面,可以讓擴充套件更加智慧的進行代理設定。

8、系統資訊

Chrome提供了用於獲取系統CPU、記憶體和儲存裝置資訊的API。

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

作者主頁:笑虎(Python愛好者,關注爬蟲、資料分析、資料探勘、資料視覺化等)

作者專欄主頁:擼程式碼,學知識 - 知乎專欄

作者GitHub主頁:擼程式碼,學知識 - GitHub

歡迎大家拍磚、提意見。相互交流,共同進步!

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