最新のSEC EDGAR Schedule 13 フォームファイリングから情報を抽出しようとしています。
例としてのファイリングのリンク:
抽出しようとしている情報 (および情報を含むファイリングの一部)
1) 報告者の名前: Saba Capital Management, LP
<p style="margin-bottom: 0pt;">NAME OF REPORTING PERSON</p>
<p style="margin-top: 0pt; margin-left: 18pt;">Saba Capital Management GP, LLC<br><br/>
2) 発行体名 : WESTERN ASSET HIGH INCOME FUND II INC
<p style="text-align: center;"><b><font size="5"><u>WESTERN ASSET HIGH INCOME FUND II INC.</u></font><u><br/></u>(Name of Issuer)</b>
3) CUSIP番号: 95766J102 (なんとか取得)
<p style="text-align: center;"><b><u>95766J102<br/></u>(CUSIP Number)</b>
4) 金額で表されるクラスの割合: 11.3% (なんとか取得)
<p style="margin-bottom: 0pt;">PERCENT OF CLASS REPRESENTED BY AMOUNT IN ROW (11)</p>
<p style="margin-top: 0pt; margin-left: 18pt;">11.3%<br><br/>
5) この申告書の提出が必要なイベントの日付: 2019 年 12 月 24 日
<p style="text-align: center;"><b><u>December 24, 2019<br/></u>(Date of Event Which Requires Filing of This Statement)</b>
.
import requests
import re
from bs4 import BeautifulSoup
page = requests.get('https://www.sec.gov/Archives/edgar/data/1058239/000106299319004848/formsc13da.htm')
soup = BeautifulSoup(page.text, 'xml')
## get CUSIP number
CUSIP = re.findall(r'[0-9]{3}[a-zA-Z0-9]{2}[a-zA-Z0-9*@#]{3}[0-9]', soup.text)
### get %
regex = r"(?<=PERCENT OF CLASS|Percent of class)(.*)(?=%)"
percent = re.findall(r'\d+.\d+', re.search(regex, soup.text, re.DOTALL).group().split('%')[0])
ファイリングから 5 つの情報を抽出するにはどうすればよいですか? 前もって感謝します