From 91e7f65617bc0220089b1a946f05179a51daf846 Mon Sep 17 00:00:00 2001 From: danvalen1 Date: Fri, 16 Oct 2020 00:34:13 -0400 Subject: [PATCH] Fixing len() bug (#32) * added class functionality * Update wrapper.py * style edits * fixed bug with len() of url() * fixing len() bug * fixing len() bug * squashing bug * removed test notebook --- waybackpy/wrapper.py | 19 ++++++++++++++----- 1 file changed, 14 insertions(+), 5 deletions(-) diff --git a/waybackpy/wrapper.py b/waybackpy/wrapper.py index 49e5f30..3c02409 100644 --- a/waybackpy/wrapper.py +++ b/waybackpy/wrapper.py @@ -3,7 +3,7 @@ import re import sys import json -from datetime import datetime +from datetime import datetime, timedelta from waybackpy.exceptions import WaybackError from waybackpy.__version__ import __version__ @@ -80,9 +80,17 @@ class Url: return "%s" % self.archive_url def __len__(self): - diff = datetime.utcnow() - self.timestamp - return diff.days - + td_max = timedelta(days=999999999, + hours=23, + minutes=59, + seconds=59, + microseconds=999999) + if self.timestamp == datetime.max: + return td_max.days + else: + diff = datetime.utcnow() - self.timestamp + return diff.days + def _url_check(self): """Check for common URL problems.""" if "." not in self.url: @@ -122,7 +130,8 @@ class Url: data = self.JSON if not data["archived_snapshots"]: - time = None + time = datetime.max + else: time = datetime.strptime(data["archived_snapshots"] ["closest"]