def d14format(date14): if not date14: return '' value = dateutil.parseDate14(date14) if value.hour == 0 and value.minute == 0: format = '%Y-%m-%d' else: format = '%Y-%m-%d %H:%M:%S' return value.strftime(format)
def isConstantTitle(titleConfig, url, title, sideEffect): if not url: return False netloc = urlparse.urlparse(url).netloc key = netloc value = cmapi.getItemValue(key, {}, modelname=PageConstantTitle) record = value.get(title) if not record: record = {} count = record.get('c', 0) isconstant = count >= titleConfig.get('occurrence', 1) if sideEffect: nnow = datetime.datetime.utcnow() record['c'] = count + 1 record['u'] = dateutil.getDateAs14(nnow) if len(value) > 20: for ik, iv in value.items(): if (nnow - dateutil.parseDate14(iv['u'])).days >= titleConfig.get('cache.day', 7): del value[ik] value[title] = record success = cmapi.saveItem(key, value, modelname=PageConstantTitle) return isconstant
def utc14duration(utc14, durationconfig=None): if not utc14: return '' value = dateutil.parseDate14(utc14) return dateutil.date2duration(value, durationconfig)