This commit is contained in:
seinfield 2017-04-16 06:17:41 +00:00 committed by GitHub
commit 058d4afbee

View file

@ -8,6 +8,7 @@ from . import time
import codecs
import re
from datetime import datetime
import dateutil.parser
import sys
try:
from Crypto.Cipher import AES
@ -112,6 +113,16 @@ class Journal(object):
def _parse(self, journal_txt):
"""Parses a journal that's stored in a string and returns a list of entries"""
def get_date_length(myline):
tmpdate=''
for i in [x for x in myline.split(' ') ]:
try:
dateutil.parser.parse(tmpdate + ' ' + i)
tmpdate = tmpdate + ' ' + i
except:
break
return len(tmpdate.strip())
# Entries start with a line that looks like 'date title' - let's figure out how
# long the date will be by constructing one
date_length = len(datetime.today().strftime(self.config['timeformat']))
@ -123,6 +134,7 @@ class Journal(object):
for line in journal_txt.splitlines():
line = line.rstrip()
try:
date_length=get_date_length(line)
# try to parse line as date => new entry begins
new_date = datetime.strptime(line[:date_length], self.config['timeformat'])