www.jpx.co.jp
ここの構成銘柄別ウエイト一覧のcsvが2023/9末で更新止まってしまってる
2023/11/8現在
TOPIXニューインデックスシリーズ定期選定結果(2023年10月31日)にあるpdfにだけまとまってたのでそこからとってみた
import pdfplumber # PDFファイルのパス pdf_path = r'C:\Users\hogehoge\Desktop\mei2_12_size.pdf' # 3. 構成銘柄一覧以下のテーブルからTOPIX500の銘柄のみを抽出 with pdfplumber.open(pdf_path) as pdf: # テーブルが始まるページを見つけるためのフラグ table_started = False # PDFの各ページを順に処理 for page in pdf.pages: # ページ内のテキストを取得 text = page.extract_text() # 特定のテキストがページに含まれているかチェックし、テーブルが始まるページを特定 if '3. 構成銘柄一覧' in text: table_started = True # テーブルが始まった後、続くページからテーブルデータを抽出 if table_started: # ページ内のテーブルを抽出 tables = page.extract_tables() for table in tables: # テーブルの各行を処理 for row in table: # 最後の列が指定されたテキストのいずれかを含むかチェック if row[-1] in ['TOPIX Core30', 'TOPIX Large70', 'TOPIX Mid400']: print(row[1], row[2]) # ここでのrow[1]はコード、row[2]は銘柄名を指す