首页 > 解决方案 > 如何从 Twitch IRC 响应中找到特定值

问题描述

我正在通过 Twitch IRC 客户端从事件中获取此输出。我想解析显示名称值和用户 ID 值,以便我可以将聊天记录到数据库中。

type: pubmsg, source: dema1904!dema1904@dema1904.tmi.twitch.tv, target: #dycart, arguments: ['!slots 100'], tags: [{'key': 'badge-info', 'value': None}, {'key': 'badges', 'value': 'hype-train/1'}, {'key': 'client-nonce', 'value': '97525aa0a742ad33b30a60fe0bc6fafd'}, {'key': 'color', 'value': '#FFEF00'}, {'key': 'display-name', 'value': 'Dema1904'}, {'key': 'emotes', 'value': None}, {'key': 'flags', 'value': None}, {'key': 'id', 'value': 'aa9ad8d2-7091-4d03-be8f-11dfe25c8e82'}, {'key': 'mod', 'value': '0'}, {'key': 'room-id', 'value': '142081117'}, {'key': 'subscriber', 'value': '0'}, {'key': 'tmi-sent-ts', 'value': '1620452947340'}, {'key': 'turbo', 'value': '0'}, {'key': 'user-id', 'value': '51405781'}, {'key': 'user-type', 'value': None}]

我可以用:

print(e.arguments[0])

打印出消息很好,但我已经尝试了多种方法来获取值,我确信有方法可以迭代它或通过 is index 调用它,但我不是 100% 肯定它总是在同一个位置,并希望我可以通过名称调用它,以防我想在以后提取任何其他值。

谢谢

标签: pythonpython-3.xirctwitch

解决方案


推荐阅读