質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Discord

Discordは、ゲーマー向けのボイスチャットアプリです。チャット・通話がブラウザ上で利用可能で、個人専用サーバーも開設できます。通話中でも音楽を流したり、PC画面を共有できるなど多機能な点が特徴です。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

Q&A

解決済

1回答

2146閲覧

discord webhook で embeds を使う投稿の仕方

mypt

総合スコア170

Discord

Discordは、ゲーマー向けのボイスチャットアプリです。チャット・通話がブラウザ上で利用可能で、個人専用サーバーも開設できます。通話中でも音楽を流したり、PC画面を共有できるなど多機能な点が特徴です。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

0グッド

0クリップ

投稿2019/11/23 12:08

編集2019/11/23 13:07

前提・実現したいこと

python で discord に webhook を使って画像つきの投稿を行いたいです

発生している問題・エラーメッセージ

https://qiita.com/Eai/items/1165d08dce9f183eac74

とりあえずこちらのサイトを参考にして
サイトの全部盛りと同じデータ形式を送信してみたのですが
ステータスコード 400 で以下のようなメッセージがかえってきて投稿できません

{"embeds": ["0"]}

該当のソースコード

python

1 2 payload = { 3 "username": "Qiitaさん", 4 "avatar_url": "https://github.com/qiita.png", 5 "content": "オススメの記事です!", 6 "embeds": [ 7 { 8 "title": "Markdown記法 チートシート", 9 "description": "Markdown記法のチートシートです。本ページではQiitaで使用可能なMarkdownのみ掲載しているため、一部原文と異なります。Markdownの原文については、Daring Fireball: Markdown Syntax Documentationをご覧下さい。...", 10 "url": "https://qiita.com/Qiita/items/c686397e4a0f4f11683d", 11 "timestamp":"2018-04-09T00:00:00+09:00", 12 "color": 5620992, 13 "footer": { 14 "text": "© 2011-2018 Increments Inc.", 15 "icon_url": "https://github.com/increments.png" 16 }, 17 "image": { 18 "url": "http://lorempixel.com/400/200/cats/" 19 }, 20 "thumbnail": { 21 "url": "https://github.com/qiita.png" 22 }, 23 "author": { 24 "name": "@Qiita", 25 "url": "https://qiita.com/Qiita", 26 "icon_url": "https://qiita-image-store.s3.amazonaws.com/0/88/profile-images/1512392618" 27 }, 28 "fields": [ 29 { 30 "name": ":thumbsup:いいね", 31 "value": "6353", 32 "inline":True 33 }, 34 { 35 "name": ":file_folder:ストック", 36 "value": "999", 37 "inline":True 38 }, 39 { 40 "name": ":bookmark_tabs:タグ", 41 "value": "Qiita, Markdown" 42 } 43 ] 44 } 45 ] 46 } 47 48 res = requests.post(discord_url, data=payload) 49 if res.status_code != 204: 50 print('%s discord response' % res.status_code) 51 print(res.text)

試したこと

payload = { 'content': "test" }

というテキストのみであれば 200 ok になって投稿できることは確認できました

補足情報

コードは python ですが他の言語でも curl でも
とにかく embeds を使った投稿のデータ形式が知りたいです

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

自己解決

https://jibundex.com/python/webhook-python
こちらにサンプルコードが乗っていて
headers={'Content-Type': 'application/json'})
をつけることでうまくいきました

投稿2019/11/23 17:06

mypt

総合スコア170

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問