示例#1
0
def showBookRankGraph(request):
    params = request.GET
    startDateISO = params.get('startDate', None)
    endDateISO = params.get('endDate', None)
    synthesizedParams = {}
    if startDateISO is None or endDateISO is None:
        today = datetime.datetime.today() + datetime.timedelta(1)
        endDate = datetime.datetime.strptime(toYYMMDD(today), _isoFmt)
        startDate = endDate - datetime.timedelta(7)
        startDateISO = toYYMMDD(startDate)
        endDateISO = toYYMMDD(endDate)
        numIntervals = (endDate - startDate).days
    else:
        startDate = awsRequest.parseISODate(startDateISO)
        endDate = awsRequest.parseISODate(endDateISO) + datetime.timedelta(1)
        numIntervals = (endDate - startDate).days
        if numIntervals < 0:
            msg = "The start-date needs to come before the end-date."
        elif numIntervals < 2:
            msg = "The start and end dates must be between 2 and 14 days apart."
        elif numIntervals > 14:
            msg = "The start and end dates must be between 2 and 14 days apart."
        else:
            msg = None
        if msg:
            return showBookRankGraphError(msg, params)
        msg = awsRequest.checkRange(startDate, endDate)
        if msg:
            return showBookRankGraphError(msg, params)
    return showBookRangeGraphHelper(params, synthesizedParams, startDate, endDate, startDateISO, endDateISO, numIntervals)
示例#2
0
def getTweets_aux(request):
    params = request.GET
    asin = params['asin']
    isoStartDate = params['isoDate']
    log.debug("isoStartDate: %s", isoStartDate)
    startDate =  awsRequest.parseISODate(isoStartDate)
    endDate = startDate + datetime.timedelta(1)
    tweets = awsRequest.getTweetsForAsinInInterval(asin, startDate, endDate)
    log.debug("Got %d tweets", len(tweets))
    from django.utils import simplejson
    resultTweets = []
    for tweet in tweets:
        user = tweet.twitterUser
        info = { 'text': tweet.text,
                'id': tweet.id,
                'tweetID': tweet.tweetId,
                'name': user.userName,
                'img': user.profileImageUrl,
                'userID': user.userId }
        resultTweets.append(info)
    json = simplejson.dumps(resultTweets, indent=2)
    log.debug(" ==> json:%s", json)
    return HttpResponse(json, mimetype='application/json')