def download_statements(self): base_download_url = self.get_base_download_url() download_url_list = [] for start_date_str, end_date_str in self.get_start_end_date_tuple_list(): download_url_list.append(base_download_url.format(start_date=start_date_str, end_date=end_date_str)) print("Download url:", download_url_list[-1]) account = self.account_list[0] if self.current_statement_csv_name in os.listdir(account.statement_source_files_dir): os.remove(account.statement_source_files_dir + "/" + self.current_statement_csv_name) for i, (start_date_str, end_date_str) in enumerate(self.get_start_end_date_tuple_list()): download_url = base_download_url.format(start_date=start_date_str, end_date=end_date_str) print(start_date_str, end_date_str, " ", end="") new_csv_name = "{} to {}.csv".format(start_date_str, end_date_str) if i == 0: new_csv_name = self.current_statement_csv_name new_cvs_path = account.statement_source_files_dir + "/" + new_csv_name if not os.path.exists(new_cvs_path): print(download_url, end=" - ") for _ in range(4): self.driver.get(download_url) csv_path = Functions.wait_for_temp_file(self.parent_bank.profile.temp_download_dir, 4) if csv_path: os.rename(csv_path, new_cvs_path) break print(new_cvs_path, "created!") else: print(new_cvs_path, "exists!")
def try_statement_download(self, download_button_elem): print("Attempting to download statement...", end="") while True: try: download_button_elem.click() break except Exception as e: time.sleep(.1) print(".", end="") print("Waiting for csv...", end="") return Functions.wait_for_temp_file(self.temp_download_dir, 2)
def try_statement_download(self): print("Attempting to download statement...", end="") self.driver.find_element_by_id("submitDownload").click() print("Waiting for csv...", end="") return Functions.wait_for_temp_file( self.parent_bank.profile.temp_download_dir, 2)