Пример #1
0
def getAllGroupUsersReverse(groupId, msgs=None):
    if (msgs is None):
        msgs = messages.getAllGroupMessages(groupId)
    userDictionary = {}
    for message in msgs:
        if (message['user_id'] not in userDictionary.keys()):
            userDictionary[message['user_id']] = message['name']
    return userDictionary
Пример #2
0
def getAllUsersFavoritedByCount(groupId, msgs=None, groupUserDictionary=None):
    if (msgs is None):
        msgs = messages.getAllGroupMessages(groupId)
    if (groupUserDictionary is None):
        groupUserDictionary = getAllGroupUsers(groupId, msgs)

    favoritedByCounts = {}
    for user in groupUserDictionary:
        favoritedByCounts[groupUserDictionary[user]] = getUserFavoritedBy(
            groupId, user, msgs)
    return favoritedByCounts
Пример #3
0
def getUserFavoritedBy(groupId, userId, msgs=None):
    if (msgs is None):
        msgs = messages.getAllGroupMessages(groupId)
    groupUserDictionary = getAllGroupUsers(groupId, msgs)

    favoritedByCounts = {}
    for message in msgs:
        if message['user_id'] == userId:
            for favoriter in message['favorited_by']:
                if (groupUserDictionary[favoriter]
                        not in favoritedByCounts.keys()):
                    favoritedByCounts[groupUserDictionary[favoriter]] = 0
                favoritedByCounts[groupUserDictionary[favoriter]] += 1
    return favoritedByCounts
Пример #4
0
def getFavoritesGivenCountbyUser(groupId, msgs=None, groupUserDictionary=None):
    if (msgs is None):
        msgs = messages.getAllGroupMessages(groupId)
    if (groupUserDictionary is None):
        groupUserDictionary = getAllGroupUsers(groupId, msgs)

    favoritesGivenCounts = {}
    for message in msgs:
        for favoriter in message['favorited_by']:
            if (groupUserDictionary[favoriter]
                    not in favoritesGivenCounts.keys()):
                favoritesGivenCounts[groupUserDictionary[favoriter]] = 0
            favoritesGivenCounts[groupUserDictionary[favoriter]] += 1
    return favoritesGivenCounts
Пример #5
0
def getFavoritedCountByUser(groupId, msgs=None, groupUserDictionary=None):
    if (msgs is None):
        msgs = messages.getAllGroupMessages(groupId)
    if (groupUserDictionary is None):
        groupUserDictionary = getAllGroupUsers(groupId, msgs)

    favoriteCounts = {}
    for message in msgs:
        if (groupUserDictionary[message['user_id']]
                not in favoriteCounts.keys()):
            favoriteCounts[groupUserDictionary[message['user_id']]] = 0
        favoriteCounts[groupUserDictionary[message['user_id']]] += len(
            message['favorited_by'])
    return favoriteCounts
Пример #6
0
def getMostFavoritedMessages(groupId,
                             numberOfTopMessages,
                             msgs=None,
                             groupUserDictionary=None):
    if (msgs is None):
        msgs = messages.getAllGroupMessages(groupId)
    if (groupUserDictionary is None):
        groupUserDictionary = getAllGroupUsers(groupId, msgs)

    # test2 = len(msgs[0]['favorited_by'])

    mostFavoritedMessages = sorted(msgs,
                                   key=lambda x: len(x['favorited_by']),
                                   reverse=True)[:numberOfTopMessages]
    return mostFavoritedMessages
Пример #7
0
def getSelfFavoritedCountByUser(groupId, msgs=None, groupUserDictionary=None):
    if (msgs is None):
        msgs = messages.getAllGroupMessages(groupId)
    if (groupUserDictionary is None):
        groupUserDictionary = getAllGroupUsers(groupId, msgs)

    selfFavoritesCounts = {}
    for message in msgs:
        for favoriter in message['favorited_by']:
            if (groupUserDictionary[favoriter]
                    not in selfFavoritesCounts.keys()):
                selfFavoritesCounts[groupUserDictionary[favoriter]] = 0
            if (message['user_id'] == favoriter):
                selfFavoritesCounts[groupUserDictionary[favoriter]] += 1
    return selfFavoritesCounts
Пример #8
0
def getMessageCountPerUser(groupId, msgs=None, groupUserDictionary=None):
    if (msgs is None):
        msgs = messages.getAllGroupMessages(groupId)
    if (groupUserDictionary is None):
        groupUserDictionary = getAllGroupUsers(groupId, msgs)

    messageCounts = {}
    for message in msgs:
        if (message['user_id'] not in messageCounts.keys()):
            messageCounts[message['user_id']] = 0
        messageCounts[message['user_id']] += 1

    messageCountsByName = {}
    for key in messageCounts.keys():
        messageCountsByName[groupUserDictionary[key]] = messageCounts[key]

    return messageCountsByName
Пример #9
0
# the issue is that Doug, Nixon, and possibly others had their first message labeled as "groupme" so if they don't have a unique name even if they do have a unique user id's
def getMessageCountPerUser(groupId, msgs=None, groupUserDictionary=None):
    if (msgs is None):
        msgs = messages.getAllGroupMessages(groupId)
    if (groupUserDictionary is None):
        groupUserDictionary = getAllGroupUsers(groupId, msgs)

    messageCounts = {}
    for message in msgs:
        if (message['user_id'] not in messageCounts.keys()):
            messageCounts[message['user_id']] = 0
        messageCounts[message['user_id']] += 1

    messageCountsByName = {}
    for key in messageCounts.keys():
        messageCountsByName[groupUserDictionary[key]] = messageCounts[key]

    return messageCountsByName


msgs = messages.getAllGroupMessages(4501211)
#users = getAllGroupUsersReverse(4501211, msgs)
print(getMostFavoritedMessages(4501211, 10, msgs))  #, users)

#(13104384) SPORTS
#(30425709) Brewgaloo
#(5954413) WPFL
#(4501211) Cary Krewe (OG)
#(18020667) Blue's Krewe

#('17421009') chapla user id