Selenium ChromeDriver&Pythonで下記の処理を行いたいのですが、ループ処理の方法がわからず困っています。
▼実装したい動作
- ページを開く
- ページ内のURLを取得→開く
- 2で開いたページから要素を取得
- 1に戻る
- ページ内の別URL(同じCSSクラスタで取得可能)を取得→開く
この繰り返し
▼対象ページ
https://www.boatrace.jp/owpc/pc/race/index
このページにあるレース一覧のURLを順番に開く→ページ内要素取得→ここに戻るという処理を行いたいです。
▼現状の記述
race_urls = [] elems_race_url = driver.find_elements_by_css_selector('.is-fBold.is-p10-7 a') for elem_race_url in elems_race_url: race_url = elem_race_url.get_attribute('href') race_urls.append(race_url) for race_url_list in race_urls: driver.get(race_url_list) time.sleep(10) driver.back()
この記述だと、URLを開くという処理が先にループされてしまい、全てのURLを開き終わった後に次の処理が始まるためページ内の要素取得ができません。
どなたかお力添えいただけないでしょうか。
どうぞ宜しくお願い致します。
回答1件
あなたの回答
tips
プレビュー