aboutsummaryrefslogtreecommitdiffstats
path: root/python
diff options
context:
space:
mode:
Diffstat (limited to 'python')
-rw-r--r--python/download_scotia.py77
1 files changed, 0 insertions, 77 deletions
diff --git a/python/download_scotia.py b/python/download_scotia.py
deleted file mode 100644
index e7c3aafb..00000000
--- a/python/download_scotia.py
+++ /dev/null
@@ -1,77 +0,0 @@
-import os
-import time
-from selenium import webdriver
-from selenium.webdriver.firefox.options import Options
-from selenium.webdriver.support.ui import WebDriverWait
-from report_ops.logger import get_logger
-
-from serenitas.utils.env import DAILY_DIR
-
-logger = get_logger(__name__)
-
-
-def wait(driver):
- WebDriverWait(driver, 10).until(
- lambda driver: driver.execute_script("return document.readyState") == "complete"
- )
-
-
-def download_report(account_username, password, report_dir):
- driver = create_driver(report_dir)
- login(driver, account_username, password)
- navigate_to_inbox(driver)
- attachment_element = get_attachment_element(driver)
- fname = attachment_element.text.split()[0]
- if not os.path.exists(os.path.join(report_dir, fname)):
- attachment_element.click()
- else:
- logging.info(f"{fname} already exists in {report_dir}")
- driver.quit()
-
-
-def login(driver, account_username, password):
- driver.get("https://web1.mail.scotiabank.com/webmail/do/Home")
- wait(driver)
- username_element = driver.find_element_by_id("username")
- username_element.send_keys(account_username)
- password_element = driver.find_element_by_id("passwordid")
- password_element.send_keys(password)
- login_button = driver.find_element_by_id("loginbutton")
- login_button.click()
- wait(driver)
-
-
-def navigate_to_inbox(driver):
- time.sleep(1)
- login_button = driver.find_element_by_id("leftNavFolderLink")
- login_button.click()
- time.sleep(1)
- login_button = driver.find_element_by_id("leftNavInboxFolderLink")
- login_button.click()
- time.sleep(1)
- elements = driver.find_elements_by_class_name("zfolder-msg-clickable")[0]
- elements.click()
- time.sleep(1)
-
-
-def get_attachment_element(driver):
- return driver.find_elements_by_class_name("zmessage-attachment-link")[0]
-
-
-def create_driver(download_dir):
- options = Options()
- options.add_argument("--headless")
- fp = webdriver.FirefoxProfile()
- fp.set_preference("browser.download.dir", str(download_dir))
- fp.set_preference("browser.download.folderList", 2)
- fp.set_preference(
- "browser.helperApps.neverAsk.saveToDisk", "application/octet-stream"
- )
- return webdriver.Firefox(firefox_profile=fp, options=options)
-
-
-def download_scotia_report():
- scotia_login = {"selene-ops@lmcg.com": "oeujG*UF!53o"}
- for username, password in scotia_login.items():
- REPORT_DIR = DAILY_DIR / "Selene" / "Scotia_reports"
- download_report(username, password, REPORT_DIR)