Raise a ValueError when there is data that was not covered in the format string.  Done to match behavior of pre-existing C-based strptime implementations.
diff --git a/Lib/_strptime.py b/Lib/_strptime.py
index 81c105f..4b7a7dd 100644
--- a/Lib/_strptime.py
+++ b/Lib/_strptime.py
@@ -423,6 +423,9 @@
     found = format_regex.match(data_string)
     if not found:
         raise ValueError("time data did not match format")
+    if len(data_string) != found.end():
+        raise ValueError("unconverted data remains: %s" %
+                          data_string[found.end():])
     year = 1900
     month = day = 1
     hour = minute = second = 0