コード例 #1
0
ファイル: heapi.py プロジェクト: sportlin/newsshow
def _archiveEvents(scope, events):
    _MIN_UPDATED_HOURS = 24
    _MIN_DDED_HOURS = 24
    startTime = dateutil.getHoursAs14(_MIN_UPDATED_HOURS)
    addedStartTime = dateutil.getHoursAs14(_MIN_DDED_HOURS)
    historEvents = models.getHistoryEvents(scope)
    if not historEvents:
        historEvents = {
            'items': [],
        }
    changed = False
    i = len(events['items']) - 1
    while i >= 0:
        if events['items'][i]['updated'] <= startTime or events['items'][i]['added'] <= startTime:
            if events['items'][i]['exposed']:
                historEvents['items'].append(events['items'][i])
                changed = True
            else:
                models.removeEvent(scope, events['items'][i]['id'])
            del events['items'][i]
        i-= 1
    if changed:
        models.saveHistoryEvents(scope, historEvents)
コード例 #2
0
ファイル: models.py プロジェクト: lifelin/newssearcher
def getUrlAdded(url, added):
    items = cmapi.getItemValue(_getKeyname(), [],
                    modelname='RunStatus')
    found = _getItem(items, url)
    if found:
        found['count'] += 1
    else:
        found = {}
        found['count'] = 1
        found['url'] = url
        found['added'] = added
        items.append(found)
    found['updated'] = dateutil.getDateAs14(datetime.datetime.utcnow())
    start14 = dateutil.getHoursAs14(24)
    items = [ item for item in items if item['updated'] > start14 ]
    cmapi.saveItem(_getKeyname(), items,
                modelname='RunStatus')
    return found['added']
コード例 #3
0
ファイル: models.py プロジェクト: funnylifelin/newsminer
def _saveNow(datasource, items, keyname):
    datasources = cmapi.getItemValue(keyname, [], modelname=LatestItem)

    days = 7
    strStart = dateutil.getHoursAs14(days * 24)
    datasources = [child for child in datasources
                    if child['source']['added'] >= strStart]

    data = {
        'source': datasource,
        'pages': items,
    }

    foundIndex = -1
    for i in range(len(datasources)):
        item = datasources[i]
        if item['source'].get('slug') == datasource.get('slug'):
            foundIndex = i
            break
    if foundIndex >= 0:
        datasources[foundIndex] = data
    else:
        datasources.append(data)
    cmapi.saveItem(keyname, datasources, modelname=LatestItem)