lib/utils.py
changeset 27 301d738b1181
parent 26 81d6679d50d0
child 28 70b6c13d084f
equal deleted inserted replaced
26:81d6679d50d0 27:301d738b1181
    38     data = fo.read()
    38     data = fo.read()
    39     fo.close()
    39     fo.close()
    40 
    40 
    41     return data
    41     return data
    42 
    42 
       
    43 def fuzzyDecode (bytes) :
       
    44     try :
       
    45         return bytes.decode('utf8')
       
    46     except UnicodeDecodeError :
       
    47         return bytes.decode('latin1', 'replace')
       
    48 
    43 def readTitleDescr (path) :
    49 def readTitleDescr (path) :
    44     """
    50     """
    45         Read a title.txt or <imgname>.txt file
    51         Read a title.txt or <imgname>.txt file
    46     """
    52     """
    47 
    53 
    50 
    56 
    51         if '---' in content :
    57         if '---' in content :
    52             title, descr = content.split('---', 1)
    58             title, descr = content.split('---', 1)
    53         else :
    59         else :
    54             title, descr = content, ''
    60             title, descr = content, ''
       
    61         
       
    62         title, descr = fuzzyDecode(title), fuzzyDecode(descr)
    55 
    63 
    56         return title.strip(), descr.strip()
    64         return title.strip(), descr.strip()
    57 
    65 
    58     return "", ""
    66     return u"", u""
    59 
    67 
    60 def url (*parts, **kwargs) :
    68 def url (*parts, **kwargs) :
    61     abs = kwargs.pop('abs', False)
    69     abs = kwargs.pop('abs', False)
    62     up = kwargs.pop('up', 0)
    70     up = kwargs.pop('up', 0)
    63     trailing = kwargs.pop('trailing', False)
    71     trailing = kwargs.pop('trailing', False)