TechMoon 科技月球
WordPress、SEO 與 AI 工具實測指南
TechMoon 科技月球
WordPress、SEO 與 AI 工具實測指南

DrissionPage 是 12,500 星的 Python 網頁自動化庫,拿掉 chromedriver、同一套語法同時做瀏覽器控制與資料收包。本機實測兩種模式都跑得通:收包 0.007 秒、headless 瀏覽器 0.61 秒啟動;但採用前要先看清兩件事,授權條款畫了商用牆(商用需作者授權、文件禁商用),開發主場也已搬到 gitcode,GitHub 的版本發布停在 2025 年 3 月。
用 AI 摘要這篇文章:
DrissionPage 實測:把瀏覽器控制與收包裝進同一套語法
在這台 MacBook 上把 DrissionPage 裝起來跑過一輪,最先記下的三個結果是:pip 安裝一次成功、收包模式 0.007 秒抓完測試頁的三個元素、瀏覽器模式 0.61 秒把 headless Chromium 帶起來,而且全程沒有下載任何 chromedriver。這個在 GitHub 上掛著超過 12,500 顆星(2026 年 10 月初基準)的中國大陸開發者專案,賣點是把控制瀏覽器和收發資料包兩件事塞進同一套 Python 語法。實測本身順利,但有兩件事會直接改變採用決定:它的授權條款畫了一道商用牆,而它的開發主場已經搬離 GitHub。這篇先把實測攤開,再把這兩件事講清楚。
測試環境是 macOS arm64、Python 3.11 的乾淨虛擬環境,安裝就是一行 pip install DrissionPage,裝進來的穩定版是 4.1.1.4。收包模式(官方叫 SessionPage)對著本機測試伺服器發一個請求,抓回頁面後用 CSS 選擇器拿元素,三個目標全中,從發請求到解析完成計時 0.007 秒;這個速度符合它的設計定位,收包模式走的是 requests 加 lxml 的路線,不開瀏覽器,適合不需要執行 JavaScript 的頁面。
瀏覽器模式(ChromiumPage)是重頭戲。把瀏覽器路徑指到本機的 Chrome for Testing 153、設定 headless 與獨立使用者資料夾後建立頁面物件,0.61 秒完成啟動。從程序清單能看到它直接以遠端除錯埠連上瀏覽器,啟動參數裡的 headless=new 是函式庫自己帶入的,整個過程確實沒有 chromedriver 這個東西存在。導航到一個 data 協定的測試頁後,以 id 定位元素成功,對整個頁面(含視窗外範圍)截圖,輸出檔案 21,594 bytes。作者拿來對比 Selenium 的那幾個賣點裡,不用下載驅動、可以整頁截圖這兩項,在這次實測裡是直接看得到的。
誠實邊界也要寫清楚:這台機器上以瀏覽器模式導航本機 loopback 位址一直沒有成功,換啟動參數與使用者資料夾重試三次都一樣,同環境的 data 頁面與收包模式都正常,因此判定為本機環境因素,不當成產品缺陷;本文的瀏覽器模式結論以 data 頁面實測為準,沒有對真實外部網站做爬取驗證,也沒有跑 Selenium 對照組,任何速度對比本文都不下結論。
DrissionPage 這個名字是作者自創的組合字:Driver 的前半加 Session 的後半。對照它的兩種頁面物件,意思很直白,要操作瀏覽器就開 ChromiumPage,要快就開 SessionPage,兩邊共用同一套查找元素的語法。官網的教學還示範同一個頁面物件在兩種模式之間切換,把需要執行 JavaScript 的步驟交給瀏覽器、把單純的請求交給收包,這是它跟常見自動化方案最根本的差異。
這個庫的來源故事值得知道。作者在官網自述,本職並非軟體開發,當年因為管理一套體驗很差的業務系統、受不了每年人工整理資料,才自學自動化。最早基於 Selenium 封裝,用得越深越不滿:隱式等待適用範圍窄、查找元素語句冗長、一個 Driver 同時間只能操作一個標籤頁、切換之後先前拿到的元素會失效,還要為不同版本的瀏覽器下載對應的 chromedriver。於是在 3.x 版完全放棄 Selenium 依賴,底層重寫成直連瀏覽器的自研核心,4.0 與 4.1 兩代再大幅重構。README 上列的跨 iframe 直接查找元素、多標籤頁並行操作、直接讀瀏覽器快取存圖片,都是這段遷移路的產物;這些是作者的宣稱,其中「不需驅動」這一項已經親眼確認。

日常使用體驗的設計細節,README 也有一串說明:查找元素內建等待與自動重試,網路不穩時程式不用自己寫輪詢;常用設定存在 ini 設定檔裡自動套用,換機器不用重頭配置;操作瀏覽器時附帶一套下載工具;解析引擎用 lxml。這幾項都是作者宣稱的設計,方向與實測中「預設參數就能動、不用先調教」的體感一致。
GitHub 把這個專案的授權標成無法歸類,原因要打開 LICENSE 檔案才明白。條款寫明:允許任何人以個人身份使用或散布本專案原始碼,但僅限學習與合法非營利目的;個人或組織如未獲版權持有人授權,不得將本專案以原始碼或二進位形式用於商業行為。後面還有一條很少見的設計:使用時違反任一條款,授權自動失效。條款列舉的義務包括不得用於違反當地法律與道德的專案、不得用於損害他人利益的專案、不得用於攻擊與騷擾,並且要遵守 Robots 協議、不得採集法律或系統 Robots 協議不允許的資料。換句話說,這不是 BSD 或 MIT 那種寬鬆授權,用「開源」兩個字帶過會漏掉重點:個人學習與非營利使用是條款涵蓋的範圍,公司專案把 pip 套件裝進商業產品,按條款需要先取得授權。
商業邊界不只在程式碼授權。官網的支援頁寫得直接:可個人免費使用,商用請聯絡作者取得授權;授權價格與條件沒有公開價目,只有電子郵件與 QQ 兩個聯絡管道,想在公司導入前做成本估算,目前拿得到的就是「去信洽談」四個字。官網每頁頁尾還掛著兩行聲明:教學文件以 CC BY-NC 4.0 授權、禁止商用,DrissionPage 是作者已註冊的商標。也就是說,把官方文件的內容整理進公司內部訓練教材這種事,也踩在非商業條款的線上。條款最後一段還有完整的免責聲明:使用這個庫發生的一切行為由使用人自行負責,產生的糾紛與後果都與版權持有人無關,程式缺陷造成的損失也不賠。台灣的開發團隊若要走合規路線,程式碼、文件、商標這三層都要看過一輪。

第二件會改變決定的事是版本與開發動線。GitHub 倉庫的 Releases 頁停在 v4.1.0.17,發布時間 2025 年 3 月;master 分支 2026 年 8 月之後的提交要嗎是 README 修訂、要嗎是同步提交,其中一則提交訊息直接寫著「5.0.0b1修改詳見gitcode」。對照 gitcode 上的同名倉庫,dev 分支的提交一路到 2026 年 9 月 28 日還在動,內容是元素清單返回型別調整與監聽器微調這類實作細節。開發沒有停,只是主場換了地方。

安裝來源反而是最清楚的:PyPI。PyPI 上的穩定版 4.1.1.4 於 2026 年 5 月底上傳,比 GitHub 最新 release 新了一代以上;beta 線已經走到 5.0.0b1(2026 年 8 月上傳),再往回看,穩定版 4.1.1.0 與 4.1.1.1 在 2025 年 7 月底同日連發後,下一次穩定版 4.1.1.3 等到 2026 年 5 月才出現,中間將近十個月的空窗。對使用者的實際影響:要追最新原始碼與修復進度要看 gitcode,要回報問題也是那邊反應快;pip 裝版本以 PyPI 為準;拿 GitHub 頁面的活躍度判斷專案死活,會得到錯誤結論。對新瀏覽器版本的支援倒是有持續跟進,changelog 記載 4.1.1.2 起外掛改用臨時方式載入以支援 135 版之後的瀏覽器,本機用 Chrome for Testing 153 實測也能連上。
把授權條款與這個專案的變現方式放在一起看,商用牆就不是意外而是商業設計的一部分。README 首頁掛著五家代理商的廣告版位,IPWO、NextProxy、MangoProxy 與 RapidProxy(各帶折扣碼)、SX.org,內容全是住宅代理與採集場景的推銷;官網支援頁列出的收入管道還有 B 站小店(賣離線文件、瀏覽器擴充功能與實戰程式碼)、網站廣告位與技術接單;教學區另有一個知識星球社群頁,寫明向作者提問、獲得官方技術支援與查看開發筆記都要加入。作者自述這是業餘作品、寫庫來自興趣,這點從發布節奏也看得出來。
有個細節值得企業合規團隊注意。作者在官網自述提到,自研核心有個他沒預料到的副作用,DrissionPage 竟然能通過 Cloudflare、Google 等人機檢測工具;官方教學區也有與指紋瀏覽器對接的專文,適用場景寫著批量操作與資料採集。這些是作者自己的陳述與官方文件的內容,但它說明了這個庫的主要客群確實包含大規模採集場景,條款裡的 Robots 協議義務與這個客群是同一體兩面。個人學習用它爬自己有權限拿的資料沒有問題,公司要在合約與法規下使用,這一層背景應該知道。順帶一提,這個專案在 gitee 拿過 GVP(Gitee 開源專案的官方推薦標章),現在 README 把 gitee、GitHub、gitcode 三個鏡像並列,哪邊最新要自己分辨,結論前面已經講過:看 gitcode 與 PyPI。
收攏成決策。個人開發者、學生、非營利專案:可以用,而且值得用。安裝成本低、語法確實簡潔、文件完整(文件站明確標示適用版本 4.1.1.4),收包與瀏覽器兩種模式按場景切換,比起先學一套瀏覽器自動化再學一套請求庫,入門負擔小很多。已經在用其他方案的團隊:遷移前先想清楚兩個成本,商用授權要另談、以及出問題時的支援路徑是知識星球與作者個人,沒有企業級服務。要視覺化拖流程圖而不是寫程式碼的人,先前介紹過的 Kspider 開源視覺化爬蟲平台是另一種取捨;要聽懂頁面背後流量的人,Wizard Proxy 開源抓包工具把 HTTP 流量按應用分組的思路可以對照著看;而把一句話直接變成可重複執行爬蟲的 BrowserAct 網頁抓取平台,則是完全不想碰程式碼時的替代路線。
Python 版本 3.6 以上、Windows、Linux 與 macOS、Chromium 系瀏覽器(Chrome、Edge)或 Electron 應用都能跑,這些是官方文件寫明的支援範圍,本機 macOS 實測與文件相符。下一步的版本計畫官方也公開列著:跨標籤頁監聽資料包、獨立 JavaScript 環境、模擬手機觸控操作、隨時修改瀏覽器代理、遠端控制方案與 WebSocket 抓包都在清單上,5.0 的 beta 已經在 PyPI 上可以裝,想嘗鮮的人 pip 指定版本就能用,想求穩的人留在 4.1.1.4。
公司專案可以直接用嗎?按 LICENSE 條款不行,商業行為需要先取得作者授權,條款同時寫明違反任一條款授權自動失效;授權價格未公開,要走郵件或 QQ 洽談。
它完全免費嗎?個人學習與合法非營利使用免費;商用要授權;官方技術支援的主要管道是作者經營的知識星球社群。
跟 Selenium 比到底差在哪?本文沒有跑對照實測,不下速度結論。確定的事實是它不需要 chromedriver(本機實測確認)、一個庫同時涵蓋瀏覽器控制與收包兩種模式;語法簡潔與執行速度是作者的宣稱。
要怎麼安裝、有什麼需求?pip install DrissionPage 一行安裝;Python 3.6 以上,Windows、Linux、macOS 都可以,瀏覽器限 Chromium 核心(Chrome、Edge 皆可),Electron 應用也在支援範圍。
一定要先裝 Chrome 嗎?只要是 Chromium 核心的瀏覽器都可以,安裝後第一次使用可指定瀏覽器執行檔路徑;沒有瀏覽器也不影響收包模式,SessionPage 不開瀏覽器就能工作。
最新版本要去哪裡看?PyPI 看版本與安裝,gitcode 看原始碼與開發動態;GitHub 的 release 頁 2025 年 3 月之後就沒有更新,別用它判斷專案狀態。