如何在Selenium WebDriver中配置帶認證的代理

更新於:

標準ChromeDriver的 --proxy-server=http://ip:port 參數會自動忽略內嵌的 user:pass 帳密,並跳出阻擋程式運行的登入對話框。若要在Selenium中順暢使用 VinaProxy 認證HTTP(S)代理,建議透過 selenium-wire 帶入認證,或是載入輕量級的Chrome onAuthRequired 背景擴充功能。

Selenium · HTTP Proxy Format
http://user:pass@ip:port (selenium-wire / Chrome proxy extension)
獨享IPv4(資料中心)
🇺🇸 United States
有貨
低至
₫20,000 / IP / 月
≈ US$0.74 · 以VND結算
批量階梯價格
  • 1 個IP₫40,000
  • 5+ 個IP₫35,000
  • 10+ 個IP₫25,000
  • 20+ 個IP₫25,000
  • 50+ 個IP₫25,000
  • 100+ 個IP₫25,000
  • 200+ 個IP₫25,000
  • 500+ 個IP₫25,000
  • 1000+ 個IP₫22,000
  • 2000+ 個IP₫20,000
購買United States代理
靜態住宅ISP
🇺🇸 United States
有貨
低至
₫55,000 / IP / 月
≈ US$2.04 · 以VND結算
批量階梯價格
  • 1 個IP₫75,000
  • 3+ 個IP₫70,000
  • 5+ 個IP₫65,000
  • 10+ 個IP₫60,000
  • 50+ 個IP₫60,000
  • 100+ 個IP₫60,000
  • 200+ 個IP₫60,000
  • 500+ 個IP₫55,000
購買United States代理

在Selenium中實現代理身分認證的兩種可靠方案

根據你的程式語言與所使用的瀏覽器驅動選擇最適合的方案:

實作方案配置程式碼語法最佳適用情境
selenium-wire(Python)seleniumwire_options={'proxy': {'http': 'http://user:pass@ip:port', 'https': 'http://user:pass@ip:port'}}Python下最快建置的方案;支援在會話執行中動態熱切換代理IP
Chrome Auth 擴充套件載入處理 chrome.webRequest.onAuthRequired 的ZIP擴充套件適用於Python、Java、C#標準Selenium及 undetected-chromedriver
遷移至 Playwrightbrowser.newContext({ proxy: { server, username, password } })原生支援情境層級代理認證,完全不需額外擴充套件

基於代理的Selenium爬蟲效能調校建議

  • 設定 options.page_load_strategy = 'eager',使WebDriver在DOM結構互動就緒後立即執行操作,無須枯等第三方追蹤碼載入
  • 在無頭模式下使用 --headless=new(Chrome 109+),確保擴充功能與代理認證行為與具介面模式完全一致
  • 純文字電商資料擷取時,可透過Chrome偏好設定關閉圖片載入以節省頻寬並提升速度
  • 務必將操作流程包裹於 try / finally: driver.quit() 區塊中,避免背景殘留無用的Chromium處理程序

操作步驟

  1. 1

    安裝 selenium-wire

    在Python虛擬環境中執行 pip install selenium-wire。

  2. 2

    定義你的 VinaProxy 代理字典

    依格式設定憑證:sw_options = {'proxy': {'http': 'http://user:pass@ip:port', 'https': 'http://user:pass@ip:port'}}。

  3. 3

    使用 seleniumwire_options 啟動 Chrome

    初始化瀏覽器驅動:driver = webdriver.Chrome(seleniumwire_options=sw_options)。

  4. 4

    驗證對外IP位址

    造訪 driver.get('https://vinaproxy.com/api/my-ip'),確認回傳的JSON資料顯示為購買的代理IP。

常見問題

為什麼在ChromeOptions中設定'--proxy-server=http://user:pass@ip:port'沒有作用?

Chromium核心基於安全理由會主動剔除啟動參數中的 user:pass@ 資訊。使用 selenium-wire、onAuthRequired 擴充套件或改用 Playwright 即可完美解決此問題。

在selenium-wire中能否不重啟Chrome動態更換代理?

可以。隨時在程式碼中將新字典指定給 driver.proxy = {'http': 'http://...', 'https': 'http://...'} 即可即時動態更換上游代理。

Chrome代理擴充套件能在無頭(Headless)模式下運作嗎?

可以,只要加上 --headless=new 參數取代舊版的 --headless,擴充套件即可如常載入並完成認證。

使用不限流量的靜態IP規模化運行Selenium WebDriver

即時開通涵蓋7個熱門國家的專屬IPv4與靜態住宅ISP代理。

購買Selenium代理

相關文章

依平台選擇代理
網路爬蟲專用代理:為 24/7 爬蟲打造的不限流量獨享 IPv4 與 ISP 代理池
為 Python、Playwright、Selenium 與 Scrapy 提供高速 HTTP(S) 獨享 IPv4 與靜態 ISP Proxy,享無限月度流量。
代理設定教學
如何在 Playwright 中設定 Proxy(瀏覽器全域與 Per-Context 驗證)
在 Node.js 與 Python 的 Playwright 中設定具備帳密驗證的 HTTP(S) 代理。透過 BrowserContext 在單一瀏覽器處理程序中分配多個獨立靜態 IP。
代理設定教學
如何在Python Requests中使用代理(HTTP/HTTPS與Session連線池)
在Python requests與requests.Session()中配置帶認證的HTTP(S)代理。解決407 ProxyError例外並實現靜態IP池輪換。
代理設定教學
如何在 Puppeteer 中設定驗證 Proxy(Node.js 指南)
在 Node.js Puppeteer 中設定帶帳密驗證的 HTTP(S) 代理:透過 --proxy-server 啟動參數結合 await page.authenticate() 達成穩定路由。
依平台選擇代理
SEO 與 SERP 排名追蹤專用代理:精準監測 7 國搜尋引擎排名
追蹤精準在地化關鍵字排名,審查地理重定向,並使用不限流量獨享 IPv4 與靜態 ISP Proxy 執行 Screaming Frog 網站爬取。
依平台選擇代理
Amazon 專用 Proxy:徹底隔離 Seller Central、KDP 與 Merch 帳號關聯風險
杜絕 Amazon Seller Central、KDP 及 Merch on Demand 帳號關聯停權。提供美國靜態 ISP 與英國/日本獨享 IPv4 代理。
IPV4 · united states
美國獨享IPv4代理:專用於大數據擷取、SEO追蹤與廣告驗證的高速美國IP
美國獨享IPv4代理:專用於資料爬取、排名追蹤、廣告驗證及亞馬遜調研。靜態獨享IP,不限流量,快速啟用。
ISP · united states
美國靜態ISP代理:外觀等同美國家庭寬頻連線的專屬固定IP
美國靜態ISP代理:登記在家庭寬頻業者下的美國固定IP,適用於亞馬遜賣家、廣告帳號與Instagram。不限流量。