diff --git a/iarchiver/gmail.py b/iarchiver/gmail.py index 0d0ab62..2605d64 100644 --- a/iarchiver/gmail.py +++ b/iarchiver/gmail.py @@ -1,6 +1,6 @@ # https://support.google.com/mail/answer/7190?hl=en gmail_categories = [ - # 'category:primary', + 'category:primary', 'category:social', 'category:promotions', 'category:updates', diff --git a/iarchiver/mail_conn.py b/iarchiver/mail_conn.py index f8c9a71..94ad48f 100644 --- a/iarchiver/mail_conn.py +++ b/iarchiver/mail_conn.py @@ -52,7 +52,7 @@ class MailConnection: try: detected = chardet.detect(raw_email_bytes) except TypeError as e: - self.logger.critical(f'Failed to decode an email. Timeout? - {e}') + self.logger.critical(f'Failed to decode an email. Timeout? Server error? - "{e}"') sys.exit(1) encoding = detected['encoding'] if not encoding: diff --git a/main.py b/main.py index a328d52..5763f17 100755 --- a/main.py +++ b/main.py @@ -39,6 +39,12 @@ def main(args): num_folders_to_sync = len(mail.folder_structure) logger.info(f'Syncing {num_folders_to_sync} folders...') + last_refresh = database.have_we_done_a_full_sync_at_all() + last_refresh_imap_date = None + if last_refresh: + last_refresh_imap_date = unix_timestamp_since_to_imap_timestamp(last_refresh) + logger.info(f'Syncing emails received after {last_refresh_imap_date}') + new_emails = 0 new_attachments = 0 did_full_sync = False @@ -49,10 +55,8 @@ def main(args): # Exclude folder continue logger.info(folder_name) - last_refresh = database.have_we_done_a_full_sync_at_all() if last_refresh: - date = unix_timestamp_since_to_imap_timestamp(last_refresh) - search_criterion = ['(SINCE "' + date + '")'] + search_criterion = ['(SINCE "' + last_refresh_imap_date + '")'] else: did_full_sync = True search_criterion = ['ALL'] @@ -67,7 +71,6 @@ def main(args): elapsed = datetime.now() - sync_start_time database.finish_sync('refresh' if not did_full_sync else 'full', new_emails, new_attachments, int(elapsed.total_seconds())) - logger.info(f'Finished email {"refresh" if not did_full_sync else "sync"} in {humanize.naturaldelta(elapsed)} and added {new_emails} new emails and {new_attachments} attachments.')