Язык: Python 2.7
Всем здравствуйте. Я нашел действительно полезный скрипт здесь: Python to Slack Web Hook
который показывает, как отправлять сообщения на веб-хук Slack.
import json
import requests
# Set the webhook_url to the one provided by Slack when you create the webhook at https://my.slack.com/services/new/incoming-webhook/
webhook_url = 'https://hooks.slack.com/services/T00000000/B00000000/XXXXXXXXXXXXXXXXXXXXXXXX'
slack_data = {"text": "<https://alert-system.com/alerts/1234|Click here> for details!"}
response = requests.post(
webhook_url, data=json.dumps(slack_data),
headers={'Content-Type': 'application/json'}
)
if response.status_code != 200:
raise ValueError(
'Request to slack returned an error %s, the response is:\n%s'
% (response.status_code, response.text)
)
Он работает безупречно, когда я запускаю файл .py.
Теперь у меня есть файл с множеством строк сообщений, которые я хочу отправить в Slack. Я уже правильно отформатировал его в файле, без пробелов и т. Д. Это просто вопрос его захвата и передачи, поэтому slack_data = line1 и т. Д.
Итак, я изменяю файл примерно так:
with open('export.txt', 'r') as e:
for line in e:
slack_data = line
Теперь, если я сделаю print slack_data
сразу после этого, информация вернется на экран точно так, как должна быть, так что я думаю, что это хорошо. Я еще не начал заставлять его работать для каждой строки, потому что он даже не работает в первой строке.
Я получаю недопустимую полезную нагрузку 400, когда запускаю ее.
РЕДАКТИРОВАТЬ: поддержка Slack сказала, что по какой-то причине в то, что они получали, были вставлены escape-символы.
"{\"text\": \"<https://alert-system.com/alerts/1234|Click here> for details!"}\n"
Любое направление или помощь приветствуется.
Спасибо!!