PhantomJS - 概述



PhantomJS被稱為無頭瀏覽器,因為在執行 JavaScript 程式碼時不涉及瀏覽器。執行過程不會在瀏覽器顯示中看到,而是在命令列提示符下。諸如CSS 處理、DOM 操作、JSON、Ajax、Canvas、SVG等功能都將在命令提示符下處理。PhantomJS 沒有 GUI,因此其所有執行都在命令列中進行。

使用 PhantomJS,我們可以寫入檔案、讀取檔案內容或上傳檔案、擷取螢幕截圖、將網頁轉換為 PDF 等等。使用無頭瀏覽器,您可以獲得所有瀏覽器行為,即Cookie、Http 請求方法,即GET/POST、清除 Cookie、刪除 Cookie等,頁面重新載入、導航到不同的頁面

PhantomJS 使用 WebKit,它具有類似於著名瀏覽器(如 Google Chrome、Mozilla Firefox、Safari 等)的瀏覽環境。它還提供大量 JavaScript API,有助於擷取螢幕截圖、上傳檔案、寫入檔案、讀取檔案、與網頁互動等。

PhantomJS 不支援 Flash 或影片,因為它需要外掛,並且難以在命令列上支援相同的功能。

PhantomJS 的功能

現在讓我們瞭解 PhantomJS 提供的功能。

頁面自動化

PhantomJS 允許您藉助其 API 讀取頁面內容。它可以幫助操作 DOM,使用外部庫來執行所需的任務。

螢幕截圖

PhantomJS 幫助擷取指定頁面的螢幕截圖,並將其儲存為各種格式的影像,如 PNG、JPEG、PDF 和 GIF。藉助螢幕截圖,它可以輕鬆幫助確保 Web 內容正常。

PhantomJS 提供屬性和方法,藉助這些屬性和方法,它允許開發人員調整螢幕截圖的大小並指定他們想要捕獲的區域。

無頭測試

PhantomJS 幫助在命令列中測試 UI。同時,藉助螢幕截圖,它可以輕鬆幫助查詢 UI 中的錯誤。PhantomJS 有時無法單獨幫助進行測試。但是,它可以與其他測試庫(如 Mocha、Yoeman 等)一起包裝。您可以藉助 PhantomJS 上傳檔案並提交表單。

PhantomJS 可用於測試跨站點的登入,並確保安全性不受損害。PhantomJS 可以與其他工具(如CasperJS、Mocha、Qunit)一起使用,使測試更強大。

網路監控

PhantomJS 的重要功能之一是使用可用的 API 監控網路連線。PhantomJS 允許檢查網路流量;它適合構建有關網路行為和效能的各種分析。

PhantomJS 可用於收集有關網頁在即時環境中的效能資料。PhantomJS 可以與Yslow等工具一起使用,以收集任何網站的效能指標。

廣告

© . All rights reserved.