実現したいこと
コードを全く変えていないのにスクレイピングが一部成功しなくなり、エラーが起きるようになってしまいました。原因がわからないので教えてほしいです。(おそらく処理速度が関係している気がします)
競馬ラボというサイトのこのようなページ
( https://www.keibalab.jp/db/race/202505030502/ )
から ペース:ハイ (-1.4) の部分を、自動的にURLを規則的に変更しながら日付と競馬場を遷移し、一気に数か月分程度取得するコードをつくったのですが、簡略化した下記コードのような
k_pace_5 = soup.select('div[class*="resultpacebox"]')[0].text
の部分で、複数レース分一気に取得するコードを起動したときだけout of list indexのエラーが起きるようになってしまいました。
下記コード単体で起動するとエラーは起きないのに、です。
(3競馬場開催の72レース開催の週には土日で4レース分くらい規則性なくセレクタの指定は合ってるのに急にペース取得のところでエラーが起きるという感じです。ちなみに例外処理でエラーのレースを飛ばすと次のレースからちゃんとペースを取得できてます。)
以前はコードを変えてないのに一気に数か月分ノーミスでペースを取得できたこと、(今)数か月分取得コードを起動した時々によって同じレースのペース部分に対して全く同じ処理を行っているのに例外処理が行われるときとそうでない時があることから、おそらく回線やずっと放置し続けているVSCの『ワークスペース ソースファイルの列挙に時間がかかっています。代わりにサブフォルダーを開く方法を検討してください。』など、なんらかの処理速度に関わるところがエラーに関係していると勝手に思っているのですが、どのような原因が考えられるか教えてほしいです。
ワークスペースやサブフォルダーについてはあまりわかっていませんが、VSCのタブとプログラムは一個しか開いていない状態です。
あとtime.sleepの秒数をリクエストを送る前に各10秒など広くとってみましたが、同じくエラーになってしまいました。
発生している問題・分からないこと
実現したいことを教えてくださいに書ききりました。
該当のソースコード
import requests from bs4 import BeautifulSoup import time import re load_url_kari = "https://www.keibalab.jp/db/race/202505030502/" headers = {"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.3"} html = requests.get(load_url_kari, headers=headers) soup = BeautifulSoup(html.content, "html.parser") k_pace_5 = soup.select('div[class*="resultpacebox"]')[0].text print(k_pace_5)
試したこと・調べたこと
- teratailやGoogle等で検索した
- ソースコードを自分なりに変更した
- 知人に聞いた
- その他
上記の詳細・結果
調べたけどいい検索結果が得られませんでした。エラーが起きたところで成功するまで時間をおいて10回以上繰り返すような例外処理なども書いてみましたがダメでした。
補足
以前はkazusaというアカウントで競馬ラボからのスクレイピングについて質問をしていましたが、アドレスを忘れてしまったので、こちらから質問しています。

回答1件
あなたの回答
tips
プレビュー