我实际上在做一个松弛机器人。 但是在这里,我需要您的帮助。我需要获取一个json对象。
import os
from slack import WebClient
from slack.errors import SlackApiError
import time
import datetime
from datetime import date
from dateutil.relativedelta import relativedelta, MO
client = WebClient(token=os.environ['SLACK_KEY'])
attachments = [{
"blocks": [
{
"type": "section",
"text": {
"type": "mrkdwn",
"text": "Hello ! Il est temps de remplir le formulaire d'absences.\n\n*Merci de suivre les instructions ci-dessous.*"
}
},
{
"type": "divider"
},
{
"type": "section",
"text": {
"type": "mrkdwn",
"text": ":round_pushpin: *<www.youtube.com|Clique ici pour te rendre sur la fiche d'absences.>* \nSurtout n'oublie pas de réagir avec :heavy_check_mark: afin d'indiquer que c'est bien fait."
}
}
]
}]
channel='C016D8D4XEG'
response = client.chat_postMessage(channel='starterbot', text="", attachments=attachments)
timestamp = response['ts']
add_reacts = client.reactions_add(channel="C01665VJ2JH", name="heavy_check_mark", timestamp=timestamp)
jsonObject = client.conversations_list(channel="C01665VJ2JH", timestamp=timestamp)
reactions = jsonObject["reactions"][-1]["name"]
print(reactions)
如您所见,我做到了:
jsonObject = client.conversations_list(channel="C01665VJ2JH", timestamp=timestamp)
reactions = jsonObject["reactions"][-1]["name"]
该代码应该在“反应”中获得“名称”,但仍然无法正常工作。
请大家给我一个答案。
答案 0 :(得分:0)
您的代码存在问题
jsonObject = client.conversations_list(channel="C01665VJ2JH", timestamp=timestamp)
conversations.list
方法不使用channel或timestamp参数。如果要获取添加到消息中的反应的历史记录,可以执行以下操作之一:
conversations.history
方法检索该特定频道中的消息,然后将它们与时间戳进行交叉引用。使用这两种方法,您都应该能够捕获消息块并解析反应。