相信很多人在做爬蟲過程中會遇到需要模擬登錄的網站,這時候使用selenium模擬浏覽器的方式就成了首選方案,但某些網站還會對selenium這種插件進行檢測,一旦發現就會出現各種反爬機制(拒絕訪問、驗證碼、加載不出來、人機判斷等等)。今天就來介紹一種方案可以完美繞過這種檢測的,就是使用Selenium 控制已經打開的浏覽器。
1、找到本地安裝的浏覽器啟動路徑,例如Chrome
# windows
C:\Program Files (x86)\Google\Chrome\Application\chrome.exe
# mac
/Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome
2、通過命令行啟動ChromeDbug模式
# windows
$ C:\Program Files (x86)\Google\Chrome\Application>chrome.exe --remote-debugging-port=9222
# mac
$ /Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome -remote-debugging-port=9222
# 注:
1. 啟動浏覽器dbug模式時需要把浏覽器打開的進程先全部關閉。
2. 9222是默認端口,可以隨意修改。但別使用已經被占用的端口。
3、連接調試開關打開的chrome
options = webdriver.ChromeOptions()
options.debugger_address = "127.0.0.1:9222"
driver = webdriver.Chrome(options=options)
以上內容如果對你有所幫助,請點個贊,謝謝!