PythonでSeleniumでスクレイピング時にClickでElementClickInterceptedException例外で失敗する。
Seleniumでスクレイピング時にClickでElementClickInterceptedException例外で失敗します。
その理由は、クリックする領域が表示されていないから。
今回はその対処法を紹介します。
ElementClickInterceptedException 例外は
Seleniumでclickをした場合に起こる例外です。
主な原因
-
クリックしたい領域が、画面の外にある。
-
クリックしたい領域の上に、他のエレメントがかぶさっている
クリックしたい領域が、画面の外にある。
クリックしたい部分が、画面の外にあり、クリックできない場合です。
少し領域が離れている場合、プログラムでスクロールする事で改善できます。
driver.execute_script(“arguments[0].scrollIntoView(false);", elem)
だけで処理は完了です。
関数化しておくと使いやすいでしょう。
def click(driver,elem):
driver.execute_script("arguments[0].scrollIntoView(false);", elem)
elem.click()
クリックしたい領域の上に、他のエレメントがかぶさっている
例えば『cookieの使用許可』、『お知らせのアラート』、『広告』等の画面が覆いかぶさっていることがあります。
そちらを事前に閉じるなどして、クリックしたい対象の領域が隠れないようにする必要があります。
おすすめ記事
URL解析、接続 - Python徹底解説
geojsonをfoliumで綺麗な地図を作る
Omni chat google extension 作成しました
全国の町丁目レベル(189,540件)の住所データのオープンデータをPython Pandasで処理してみた
Bestな3D 開発プログラミング環境とは… OpenGL , DierctX , Unity …
画像 切り出し、トリミング - OpenCV、Python徹底解説
Supponsered
外部サイト
↓プログラムを学んでみたい場合、学習コースなどもおすすめです!