Selenium小技:Chromeブラウザを手動で操作しつつ時折Seleniumコードで動かす
ポートを指定してデバックモードでchromeを立ち上げます。何故かpowershellではうまくいきませんでした。
# コマンドプロンプトからChromeを起動
# "C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" -remote-debugging-port=9222 --user-data-dir=C:\Temp_ForChrome
プレーンなChromeが立ち上がります。selenium側では、次のようにポートを指定します。driverは各自ドライバーのPathを指定してください。
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")
chrome_driver = r'C:~\\chromedriver.exe'
driver = webdriver.Chrome(chrome_driver, chrome_options=chrome_options)
Jupyterlabとかでやるとわかりやすいです。
利用シーンとしては、seleniumでログインしてから、遷移するページでの動作を色々検証したいけど、検証するたびに、はじめからブラウザを立ち上げているのは面倒です。なので、これで実際に手でブラウザを触ってDeveleper toolで検証しながら、少しずつ要素を取得すると効率的です。
あと、最近、要素の取得はCSS SelectorをChromeのDeveleper toolで取得しながらやると、失敗がなくなって仕事がはかどります。