Seleniumでスクレイピングをしていると、チェックボックスにチェックが入っているかで処理を分岐したい時がありました。たいていチェックボックスにチェックが入っているかどうかでclassNameに”checked”が入ったり入らなかったりするので、今回はそんな状況のためにある要素のクラス名を取得する方法をまとめます。
$driverやパスなどはご自身の環境に合わせてください
<?php $attr = $this->driver->findElement(WebDriverBy::xpath("//label[contains(@class, 'flatbox')]/div"))->getAttribute('class'); if(strpos($attr,'checked') !== false){ echo("チェックが入っています!!"); }
エレメントを指定して”->getAttribute(‘class’);”でクラスの内容が取得できます。他にも”class”を”id”や”href”とかも取ってこれるので状況に合わせて有効に使ってみてください!