![見出し画像](https://assets.st-note.com/production/uploads/images/96754460/rectangle_large_type_2_95131b8750bbbfbfe9d57bcdc1edf876.png?width=1200)
【コピペOK・初心者向け】GASで画像APIを叩いてDiscordに送信する(手抜き)
どうも、音猫。です!
今回はnekos.bestというAPIを用いてDiscordにカワイイ画像を送信してくれる機能を作りたいと思います!
nekos.bestとは?
pixivなどに投稿されたカワイイ画像を呼び出してくれるAPIだと思っていただければいいと思います。
アクセス制限やKeyの取得の必要などがなく、初心者でも使いやすいと思ってます。
注意!
今回は適当にコード書いてます2024/04/18時点の私が過去のアドバイスを受け修正しました、えらい!
ちゃんと動作することは確認済みですが、もっとこうしたほうがよいなどという意見がありましたらコメントにお願いします🙏
必要なもの(こと)
Discordアカウント
Googleアカウント
前回の記事を読む(前回の知識がある前提で進めていくため)
手順
さて作り方です。今回はテキトーに書いたので実は前回よりも簡単ですw
今回は最初からGASを開いてください。
そして「新しいプロジェクト」を開いて下のコードを貼り付けましょう!
const discordWebHookURL = "DiscordのwebhookURL";
function sendNeko() {
const arr = ["neko", "waifu", "kitsune"];
const random = Math.floor(Math.random() * arr.length);
const result = arr[random];
const url = `https://nekos.best/api/v2/${result}`;
const response = UrlFetchApp.fetch(url).getContentText()
const json = JSON.parse(response);
const source = json["results"][0].source_url
const name = json["results"][0].artist_name
const href = json["results"][0].artist_href
const imageUrl = json["results"][0].url
const message = {
"tts": false,
"embeds": [
{
"title": "Nekos.best",
"url": source,
"color": 16775885,
"image": {
"url": imageUrl
},
"author": {
"name":name,
"url": href
}
}
]
}
const param = {
"method": "POST",
"headers": { 'Content-type': "application/json" },
"payload": JSON.stringify(message)
}
UrlFetchApp.fetch(discordWebHookURL, param);
}
そしてこの後にDiscordのブラウザ版でwebhookを作成しましょう。
(2024/04/19時点では、アプリ版ではwebhookが作成できません)
次の画像にしたがって作ってください
![](https://assets.st-note.com/img/1674983268630-YIOEMa0ycy.png?width=1200)
![](https://assets.st-note.com/img/1674983330842-q09gN528Xy.png?width=1200)
![](https://assets.st-note.com/img/1674983458184-EyjwbBh665.png?width=1200)
んでコピーしたURLを
さっきのコードの
const discordWebHookURL = "DiscordのwebhookURL";
の""の中に"https://~"みたいな感じで貼り付けて完成です!
後は前回同様に実行して承認したら完成です〜
定期的に送信させる
機能自体は完成しました
しかし、前回同様いちいち「実行ボタン」を押さないと送信してくれません
そこで、GASには「トリガー」という素晴らしい機能があるのはご存知でしょうか?今回はこれを使って一定時間ごとに送信するようにしてみましょう!
簡単です
![](https://assets.st-note.com/img/1674984176585-faAxvy0mO9.png?width=1200)
![](https://assets.st-note.com/img/1674984230768-ExNmzq9jVt.png?width=1200)
![](https://assets.st-note.com/img/1674984339449-Gtr0440ldx.png?width=1200)
これで完成です!お疲れさまでした〜