Merged in ftao/pywhois (pull request #2)
authorRichard Penman <richard.penman@gmail.com>
Wed, 02 Mar 2016 09:45:05 +0000
changeset 69 5e0cf54cf6c3
parent 67 25bab46f7281 (diff)
parent 68 6fcd6564d1f8 (current diff)
child 75 81859268375c
Merged in ftao/pywhois (pull request #2) update tlds.txt
--- a/whois/parser.py	Sat Jan 16 06:48:13 2016 +0000
+++ b/whois/parser.py	Wed Mar 02 09:45:05 2016 +0000
@@ -45,7 +45,7 @@
 def datetime_parse(s):
     for known_format in KNOWN_FORMATS:
         try:
-            s = datetime.strptime(s.strip(), known_format)
+            s = datetime.strptime(s, known_format)
             break
         except ValueError as e:
             pass  # Wrong format, keep trying
@@ -57,7 +57,7 @@
     if DATEUTIL:
         try:
             return dp.parse(
-                s.strip(),
+                s,
                 tzinfos=tz_data,
                 dayfirst=dayfirst,
                 yearfirst=yearfirst
@@ -114,11 +114,13 @@
             if regex:
                 values = []
                 for value in re.findall(regex, self.text, re.IGNORECASE):
-                    if isinstance(value, basestring):
+                    value = value.strip()
+                    if value and isinstance(value, basestring):
                         # try casting to date format
-                        value = cast_date(value.strip(),
-                                          dayfirst=self.dayfirst,
-                                          yearfirst=self.yearfirst)
+                        value = cast_date(
+                            value,
+                            dayfirst=self.dayfirst,
+                            yearfirst=self.yearfirst)
                     if value and value not in values:
                         # avoid duplicates
                         values.append(value)
@@ -548,7 +550,7 @@
         'domain_name': 'domain:\s*(.+)',
         'registrar': 'registrar:\s*(.+)',
         'creation_date': 'created:\s*(.+)',
-        'expiration_date': 'anniversary:\s*(.+)',
+        'expiration_date': 'Expir\w+ Date:\s?(.+)',
         'name_servers': 'nserver:\s*(.+)',  # list of name servers
         'status': 'status:\s*(.+)',  # list of statuses
         'emails': '[\w.-]+@[\w.-]+\.[\w]{2,4}',  # list of email addresses