SeleniumでWebスクレイピングしようとしたら”AttributeError: ‘WebDriver’ object has no attribute”と表示された

いつものようにJRAから競馬の結果をスクレイピングしようとしたら

AttributeError: 'WebDriver' object has no attribute '任意の変数'

と表示されてスクレイピングできなくなった。

原因

seleniumのバージョン4.3.0から、find_element_by_*系メソッドが廃止されて使えなくなったらしい。

https://github.com/SeleniumHQ/selenium/blob/a4995e2c096239b42c373f26498a6c9bb4f2b3e7/py/CHANGES#L2

そういや直前にseleniumをupdateしたんだった。

とりあえず応急処置

seleniumのバージョンを落とします(汗

pip install selenium==4.1.0

とりあえず動くようになったけども、根本的にはソースコード書き換えないとだめだなこりゃ。