From 108ce43ac0a1e793d4f53b010d31edb84220be58 Mon Sep 17 00:00:00 2001 From: Artem Veremey Date: Mon, 12 Apr 2021 09:51:05 -0700 Subject: [PATCH] Refactor market_watch_view --- ...rket_watch_api.py => market_watch_view.py} | 38 +++++++++++++++---- 1 file changed, 31 insertions(+), 7 deletions(-) rename gamestonk_terminal/due_diligence/{market_watch_api.py => market_watch_view.py} (93%) diff --git a/gamestonk_terminal/due_diligence/market_watch_api.py b/gamestonk_terminal/due_diligence/market_watch_view.py similarity index 93% rename from gamestonk_terminal/due_diligence/market_watch_api.py rename to gamestonk_terminal/due_diligence/market_watch_view.py index f9cfd054983..cb53ef760cb 100644 --- a/gamestonk_terminal/due_diligence/market_watch_api.py +++ b/gamestonk_terminal/due_diligence/market_watch_view.py @@ -1,4 +1,8 @@ +""" Due Diligence Controller """ +__docformat__ = "numpy" + import argparse +from typing import List import re import requests import pandas as pd @@ -13,7 +17,17 @@ from gamestonk_terminal.helper_funcs import ( ) -def sec_fillings(l_args, s_ticker): +def sec_fillings(other_args: List[str], ticker: str): + """Display SEC filings for a given stock ticker + + Parameters + ---------- + other_args : List[str] + argparse other args - ["-n", "10"] + ticker : str + Stock ticker + """ + parser = argparse.ArgumentParser( add_help=False, prog="sec", @@ -34,13 +48,13 @@ def sec_fillings(l_args, s_ticker): ) try: - ns_parser = parse_known_args_and_warn(parser, l_args) + ns_parser = parse_known_args_and_warn(parser, other_args) if not ns_parser: return pd.set_option("display.max_colwidth", None) - url_financials = f"https://www.marketwatch.com/investing/stock/{s_ticker}/financials/secfilings" + url_financials = f"https://www.marketwatch.com/investing/stock/{ticker}/financials/secfilings" text_soup_financials = BeautifulSoup( requests.get(url_financials, headers={"User-Agent": get_user_agent()}).text, @@ -83,7 +97,17 @@ def sec_fillings(l_args, s_ticker): return -def sean_seah_warnings(l_args, s_ticker): +def sean_seah_warnings(other_args: List[str], ticker: str): + """Display Sean Seah warnings + + Parameters + ---------- + other_args : List[str] + argparse other args + ticker : str + Stock ticker + """ + parser = argparse.ArgumentParser( add_help=False, prog="warnings", @@ -114,7 +138,7 @@ def sean_seah_warnings(l_args, s_ticker): ) try: - ns_parser = parse_known_args_and_warn(parser, l_args) + ns_parser = parse_known_args_and_warn(parser, other_args) if not ns_parser: return @@ -129,7 +153,7 @@ def sean_seah_warnings(l_args, s_ticker): # From INCOME STATEMENT, get: 'EPS (Basic)', 'Net Income', 'Interest Expense', 'EBITDA' url_financials = ( - f"https://www.marketwatch.com/investing/stock/{s_ticker}/financials/income" + f"https://www.marketwatch.com/investing/stock/{ticker}/financials/income" ) text_soup_financials = BeautifulSoup( requests.get(url_financials, headers={"User-Agent": get_user_agent()}).text, @@ -173,7 +197,7 @@ def sean_seah_warnings(l_args, s_ticker): ] # From BALANCE SHEET, get: 'Liabilities & Shareholders\' Equity', 'Long-Term Debt' - url_financials = f"https://www.marketwatch.com/investing/stock/{s_ticker}/financials/balance-sheet" + url_financials = f"https://www.marketwatch.com/investing/stock/{ticker}/financials/balance-sheet" text_soup_financials = BeautifulSoup( requests.get(url_financials, headers={"User-Agent": get_user_agent()}).text, "lxml",