diff options
author | James Maslek <jmaslek11@gmail.com> | 2022-11-29 14:30:11 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-11-29 14:30:11 -0500 |
commit | e044c82e7c908adabc4e5462e4f9436ec9988527 (patch) | |
tree | 340698bade53b42a6360ebc1289ffe22dd82828e | |
parent | a12b788ea9cf382cccb54cf525cc7fc19b6f03d8 (diff) |
Fix #3628 (#3653)
6 files changed, 523 insertions, 562 deletions
diff --git a/openbb_terminal/stocks/insider/openinsider_model.py b/openbb_terminal/stocks/insider/openinsider_model.py index f011cea68bd..1bcb09ff0da 100644 --- a/openbb_terminal/stocks/insider/openinsider_model.py +++ b/openbb_terminal/stocks/insider/openinsider_model.py @@ -1434,38 +1434,30 @@ def get_insider_types() -> Dict: @log_start_end(log=logger) -def get_print_insider_data(type_insider: str = "lcb", limit: int = 10): +def get_print_insider_data(type_insider: str = "lcb"): """Print insider data Parameters ---------- type_insider: str Insider type of data. Available types can be accessed through get_insider_types(). - limit: int - Limit of data rows to display Returns ------- data : pd.DataFrame Open insider filtered data """ - response = requests.get(f"http://openinsider.com/{d_open_insider[type_insider]}") - soup = BeautifulSoup(response.text, "html.parser") - table = soup.find("table", {"class": "tinytable"}) - - if not table: - console.print("No insider information found", "\n") + response = requests.get( + f"http://openinsider.com/{d_open_insider[type_insider]}", + headers={"User-Agent": "Mozilla/5.0"}, + ) + df = ( + pd.read_html(response.text)[-3] + .drop(columns=["1d", "1w", "1m", "6m"]) + .fillna("-") + ) + if df.empty: return pd.DataFrame() - - table_rows = table.find_all("tr") - - res = [] - for tr in table_rows: - td = tr.find_all("td") - row = [tr.text.strip() for tr in td if tr.text.strip()] - res.append(row) - - df = pd.DataFrame(res).dropna().head(n=limit) columns = [ "X", "Filing Date", @@ -1503,5 +1495,4 @@ def get_print_insider_data(type_insider: str = "lcb", limit: int = 10): df["Insider Name"] = df["Insider Name"].apply( lambda x: "\n".join(textwrap.wrap(x, width=20)) if isinstance(x, str) else x ) - return df diff --git a/openbb_terminal/stocks/insider/openinsider_view.py b/openbb_terminal/stocks/insider/openinsider_view.py index cd39aad16ca..5343b07a7b5 100644 --- a/openbb_terminal/stocks/insider/openinsider_view.py +++ b/openbb_terminal/stocks/insider/openinsider_view.py @@ -117,11 +117,11 @@ def print_insider_data(type_insider: str = "lcb", limit: int = 10, export: str = export: str Export data format """ - df = get_print_insider_data(type_insider, limit) + df = get_print_insider_data(type_insider) if not df.empty: print_rich_table( - df, + df.head(limit), headers=[x.title() for x in df.columns], show_index=False, title="Insider Data", @@ -132,7 +132,7 @@ def print_insider_data(type_insider: str = "lcb", limit: int = 10, export: str = ) if df.shape[1] == 13: - l_chars = [list(chars) for chars in df["X"].values] + l_chars = [list(chars) for chars in df["X"].values if chars != "-"] l_uchars = np.unique(list(itertools.chain(*l_chars))) for char in l_uchars: diff --git a/tests/openbb_terminal/stocks/insider/cassettes/test_openinsider_view/test_print_insider_data.yaml b/tests/openbb_terminal/stocks/insider/cassettes/test_openinsider_view/test_print_insider_data.yaml index 69a13f24a8b..35a8e9b2963 100644 --- a/tests/openbb_terminal/stocks/insider/cassettes/test_openinsider_view/test_print_insider_data.yaml +++ b/tests/openbb_terminal/stocks/insider/cassettes/test_openinsider_view/test_print_insider_data.yaml @@ -9,393 +9,372 @@ interactions: Connection: - keep-alive User-Agent: - - python-requests/2.27.1 + - Mozilla/5.0 method: GET uri: http://openinsider.com/insider-purchases response: body: string: !!binary | - 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 |