簡體   English   中英

將 selenium chrome 驅動與 python 一起使用時如何避免驗證頁面?

[英]How to avoid verification page when using selenium chrome driver with python?

我想用 selenium python 廢棄一些數據。 我有時會遇到這種類型的屏幕:

在此處輸入圖像描述

您知道要繼續刪除此類驗證嗎? 這是我的代碼:

from selenium import webdriver
from selenium.webdriver.chrome.options import Options
from selenium.webdriver.chrome.service import Service
from webdriver_manager.chrome import ChromeDriverManager

options = Options()
options.add_argument("start-maximized")
options.add_argument("--disable-web-security")
options.add_argument("--disable-site-isolation-trials")
options.add_argument("--allow-running-insecure-content")


driver = webdriver.Chrome(service=Service(ChromeDriverManager().install()), options=options)

driver.get('THE_WEBSITE_COM')

Selenium 和其他自動化工具具有某些用戶代理和其他標識符,表明它是自動化的。 所以也許可以玩一下這樣的事情。 一些網站使用反僵屍工具來分析瀏覽行為和模式,所以盡量減慢它並隨機化它,例如。 頁面請求之間的隨機時間

另一個技巧是查看網站並嘗試查找是否有其他途徑可以獲取信息。 例如:是否有一個公共的 API 可以用來繞過它? 網站有手機版嗎? 有時移動版本的驗證碼執行力度較小。

我大部分時間做的是單獨啟動瀏覽器並使用 Dev 端口連接到它,這在本文中有很好的解釋。

為了讓 Chrome 打開一個端口進行遠程調試,我們需要使用自定義標志啟動它——

chrome.exe --remote-debugging-port=9222 --user-data-dir="C:\selenum\ChromeProfile"

然后使用這個連接到瀏覽器

from selenium import webdriver
from selenium.webdriver.chrome.options import Options

chrome_options = Options()
chrome_options.add_experimental_option("debuggerAddress", "127.0.0.1:9222")
#Change chrome driver path accordingly
chrome_driver = "C:\chromedriver.exe"
driver = webdriver.Chrome(chrome_driver, chrome_options=chrome_options)
print driver.title

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM