前提
pythonでのスクレイピングでTableタグが無いものについてのDataFrameの作成の仕方
実現したいこと
以下の競艇サイトのスクレイピングで、結果をDataFrameにして保存したいのですがいい方法がありますでしょうか。
http://www1.mbrace.or.jp/od2/K/202110/09/07.html
該当のソースコード
import pandas as pd import time import requests import pickle import numpy as np import csv from bs4 import BeautifulSoup from tqdm import tqdm from decimal import Decimal ################################################################### def scrape_race_results(race_id_list): race_results = {} for race_id in tqdm(race_id_list): try: time.sleep(1) url = "http://www1.mbrace.or.jp/od2/K/" + race_id + '.html' html = requests.get(url) html.encoding = 'EUC-JP' soup = BeautifulSoup(html.content, 'html.parser') race_results[race_id] = soup.get_text() except IndexError: continue except AttributeError: continue except Exception as e: print(e) print(race_id) continue except: break return race_results #######------レースIDテスト--------######## race_id_list = ['202110/09/11','202110/09/12','202110/09/13','202110/09/14', '202110/09/15'] exe = scrape_race_results(race_id_list)
試したこと
上記のままだと全てスクレイピングされるのは分かっていますが,良い方法が思いつかないのでご教授お願いします。
補足情報(FW/ツールのバージョンなど)
ここにより詳細な情報を記載してください。
回答1件
あなたの回答
tips
プレビュー