Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- =========================== get_chat_count.py ================================
- import json
- from collections import defaultdict
- def get_messages():
- with open("FWMC_83_chat.json") as fh:
- return fh.read()
- user_count_map = defaultdict(int)
- for line in get_messages().splitlines():
- if not line:
- continue
- entry = json.loads(line)['replayChatItemAction']['actions'][0]
- if 'addChatItemAction' not in entry or 'liveChatTextMessageRenderer' not in entry['addChatItemAction']['item']:
- continue
- author = entry['addChatItemAction']['item']['liveChatTextMessageRenderer']['authorName']['simpleText']
- membership = 'Non Member'
- if 'authorBadges' in entry['addChatItemAction']['item']['liveChatTextMessageRenderer']:
- membership = entry['addChatItemAction']['item']['liveChatTextMessageRenderer']['authorBadges'][0]['liveChatAuthorBadgeRenderer']['tooltip']
- user = f'{author} | {membership}'
- user_count_map[user] += 1
- for entry in sorted(user_count_map.items(), key=lambda x: x[1], reverse=True):
- print(f'{entry[1]} | {entry[0]}')
- ====================== get_chat_count.py ====================
- import json
- def get_messages():
- with open("FWMC_83_chat.json") as fh:
- return fh.read()
- for line in get_messages().splitlines():
- if not line:
- continue
- entry = json.loads(line)['replayChatItemAction']['actions'][0]
- if 'addChatItemAction' not in entry or 'liveChatTextMessageRenderer' not in entry['addChatItemAction']['item']:
- continue
- message = ''
- for message_run in entry['addChatItemAction']['item']['liveChatTextMessageRenderer']['message']['runs']:
- if 'emoji' in message_run:
- if 'shortcuts' in message_run['emoji']:
- message += message_run['emoji']['shortcuts'][0]
- else:
- message += message_run['emoji']['emojiId']
- else:
- message += message_run['text']
- author = entry['addChatItemAction']['item']['liveChatTextMessageRenderer']['authorName']['simpleText']
- timestamp = entry['addChatItemAction']['item']['liveChatTextMessageRenderer']['timestampText']['simpleText']
- membership = 'Non Member'
- if 'authorBadges' in entry['addChatItemAction']['item']['liveChatTextMessageRenderer']:
- membership = entry['addChatItemAction']['item']['liveChatTextMessageRenderer']['authorBadges'][0]['liveChatAuthorBadgeRenderer']['tooltip']
- print(f'{timestamp} | {author} | {membership} | {message}')
Advertisement
Add Comment
Please, Sign In to add comment