如何使用 Python Selenium 繞過 Google 的安全驗證限制
介紹
在使用 Selenium 自動化測試或網頁爬蟲時,可能會遇到 Google 的安全驗證提示,顯示「這個瀏覽器或應用程式可能有安全疑慮」。這篇文章將介紹如何透過特定的 URL 繞過這一限制,並提供 2025 年最新的 Python 語法及最佳實踐。
Selenium 被 Google 阻擋範例
當使用 WebDriver 開啟瀏覽器時,Google 會將這視為潛在的安全風險,並阻止用戶登入。這裡將展示如何使用 Selenium 來開啟 Google 首頁並進行登入。
程式碼示例
“`python
from selenium import webdriver
from webdriver_manager.chrome import ChromeDriverManager
# 使用 Chrome 的 WebDriver
browser = webdriver.Chrome(ChromeDriverManager().install())
# 開啟 Google 首頁
browser.get(‘https://www.google.com’)
“`
開啟登入
*圖示:登入頁面截圖*
登入結果
*圖示:登入失敗提示*
無法將您登入,因為這個瀏覽器或應用程式可能有安全疑慮。建議您改用其他瀏覽器。如果您使用的是系統支援的瀏覽器,請重新整理畫面,然後再次嘗試登入帳戶。
繞過安全限制的解決方法
要繞過 Google 的安全性限制,可以使用以下的 OAuth 2.0 授權 URL:
https://accounts.google.com/o/oauth2/v2/auth/oauthchooseaccount?redirect_uri=https%3A%2F%2Fdevelopers.google.com%2Foauthplayground&prompt=consent&response_type=code&client_id=407408718192.apps.googleusercontent.com&scope=email&access_type=offline&flowName=GeneralOAuthFlow
程式碼示例
“`python
from selenium import webdriver
from webdriver_manager.chrome import ChromeDriverManager
# 使用 Chrome 的 WebDriver
browser = webdriver.Chrome(ChromeDriverManager().install())
browser.get(‘https://accounts.google.com/o/oauth2/v2/auth/oauthchooseaccount?redirect_uri=https%3A%2F%2Fdevelopers.google.com%2Foauthplayground&prompt=consent&response_type=code&client_id=407408718192.apps.googleusercontent.com&scope=email&access_type=offline&flowName=GeneralOAuthFlow’)
“`
登入畫面
*圖示:Google OAuth 2.0 Playground 登入畫面*
登入結果
登入成功後,將跳轉到 Google Developer 頁面。
*圖示:成功登入後的頁面*
延伸應用
此技術可以幫助用戶成功登入 Google 服務,而不僅限於 Google 首頁。您可以透過這一方法訪問 YouTube、Gmail 等其他 Google 服務。
*動畫示範:跳轉到其他 Google 服務*
原理解析
目前 Google 對 WebDriver 的登入進行了限制,但允許通過第三方應用來進行登入。例如,您可以在 Stack Overflow 上使用 Google 登入,成功後將會在 Google 帳戶中登錄。
*圖示:第三方應用登入示範*
結論
透過這種方法,您可以方便地繞過 Google 的安全驗證限制,並使用各種 Google 服務。這是自動化測試或網頁爬蟲的實用技巧。
參考資料:[如何使用 Python 進行網頁自動化](https://vocus.cc/article/600aaf8fd43b87001c3fa1f1)
Q&A(常見問題解答)
Q1: 使用 Selenium 繞過 Google 驗證有風險嗎?
A1: 是的,使用此方法可能違反 Google 的使用條款,建議僅在合法範圍內使用。
Q2: 如何處理登入失敗的情況?
A2: 確保使用的 URL 和參數正確,並檢查您的網絡連接。
Q3: 有其他方式可以進行自動化測試嗎?
A3: 除了 Selenium,您還可以考慮使用其他工具如 Puppeteer 或 Playwright。
—