🎄teratailクリスマスプレゼントキャンペーン2024🎄』開催中!

\teratail特別グッズやAmazonギフトカード最大2,000円分が当たる!/

詳細はこちら
C#

C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

Unity

Unityは、Unity Technologiesが開発・販売している、IDEを内蔵するゲームエンジンです。主にC#を用いたプログラミングでコンテンツの開発が可能です。

Q&A

1回答

789閲覧

GiphyAPIを利用してc#でTwitterのようにGif画像検索機能を作成したい

yui_02

総合スコア0

C#

C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

Unity

Unityは、Unity Technologiesが開発・販売している、IDEを内蔵するゲームエンジンです。主にC#を用いたプログラミングでコンテンツの開発が可能です。

0グッド

0クリップ

投稿2020/11/25 13:46

編集2020/11/25 14:32

前提・実現したいこと

・GiphyAPIを利用して任意の検索を実行したいです。
・UnityとC# を使っています。
・完成イメージはTwitterのGif機能です。

様々な記事を調べましたがc#で作成されている記事は中々見つかりませんでした。

C#でTwitterのようなGif画像検索機能を作成したことがある方、
こうすれば作成できるのではという意見がある方がおりましたら、
教えていただきたいです!

もしくは試した記事を改変して完成イメージにできないか考えてます。
◆試した記事で改変したいこと
・取得できる画像の制限を取り払いたい
・好きな単語で検索するようにしたい

このように改変するためにアドバイスなどありましたらお願いします!

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

・GiphyAPIの公式ページのサンプルコードにはc#での書き方が記載されていない。
・GiphyAPIを利用しc#で書かれた記事が一つ見つかりました。
しかし、取得できる画像の制限があり、好きな単語で検索することができない。

該当のソースコード

試したこと

GiphyAPIを利用したGiphy(Gif画像検索ツール)で用意されたGif画像の中から25個の画像を取得しランダムで表示するといった機能
●リンク:
https://github.com/coryleach/UnityGiphy#2.0.0

補足情報(FW/ツールのバージョンなど)

Unity2019.4.11f1

◆制限の回避において
・取得してきた画像を表示する処理のコードを見たところ制限している部分が見つからず
・Giphyから全ての画像を取得してから25個に制限しているのではなく25個しか取得できないように設定されているイメージでした????‍♀️

◆GiphyAPIの公式ページのサンプルコード
・二行のみの記載でここからどう組めばTwitternoように作成できるのか分からず
・JavaScriptでTwitterのGif機能のように実装されている記事(リンク:https://codepen.io/ATwrx/pen/ZvzwPv)を見つけたのですが、コードが長くc#でどう書き直せば良いか分からない状態でした????

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

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

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

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

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

ayousanz

2020/11/25 13:50

「GiphyAPIを利用しc#で書かれた記事が一つ見つかりました.取得できる画像の制限があり、好きな単語で検索することができない。」記事があるのでしたら,制限を回避すればいいのでないでしょうか. GiphyAPIの公式ページのサンプルコードにはc#での書き方が記載されていない. APIの叩き方は言語違えど,ある程度は同じなので公式があるのでしたらほかの言語を参考にAPIをたたいてみては??
yui_02

2020/11/25 14:28

お返事ありがとうございます! 制限の回避ですが、取得してきた画像を表示する処理のコードを見たところ制限している部分が見つからずでして…。Giphyから全ての画像を取得してから25個に制限しているのではなく25個しか取得できないように設定されているイメージでした????‍♀️ サンプルコードでは二行のみの記載でここからどう組めばTwitternoように作成できるのか分からず、JavaScriptでTwitterのGif機能のように実装されている記事(リンク:https://codepen.io/ATwrx/pen/ZvzwPv)を見つけたのですが、コードが長くc#でどう書き直せば良いか分からない状態でした???? こちら言葉不足でしたのでご指摘の通り補足に追記しておきます! ご指摘ありがとうございました!!????
ayousanz

2020/11/25 14:37

詳しいことはコードが含まれるため,回答部分に記述します
guest

回答1

0

C#でのAPIの叩き方

js

1var queryURL = "https://api.giphy.com/v1/gifs/search?"; 2 var query; 3 var params = { 4 q: query, 5 limit: 10, 6 api_key: "aFFKTuSMjd6j0wwjpFCPXZipQbcnw3vB", 7 fmt: "json" 8 };

上記のサイトよりAPIをたたいている部分が,この部分になります
これをUnityで呼び出い場合はUnityWebRequestを使えば同じ感じで呼ぶことができます.

詳しい使い方はUnityWebRequest Get などで調べると出てくると思います.

簡単にUnityWebRequestを使っているサイト

このサイトでの,UnityWebRequest webRequest = UnityWebRequest.Get(url); のURLの部分を上記の queryURLを入れてあげて,パラメータを設定すれば取得はできると思います.

APIで取得できる数の制限について

詳しいことは公式Documentなどを確認しないといけませんが,回避方法は(だいたいのAPI)以下になります.

  • 時間制限の場合は素直に時間を空ける
  • APIKeyを複数取得する
  • 同じような結果が返ってくるAPIでもものによっては一定時間に叩ける数が変わってきます(例twitterAPI)

投稿2020/11/25 14:44

ayousanz

総合スコア258

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

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

yui_02

2020/11/26 00:43

具体的にコードまで教えてくださり本当にありがとうございます!!! c#やAPIにおいてまだまだ理解しきれていない状態だったため新たな知識が増えて大変嬉しいです!!????✨ こちら試してみます!また分からない点ありましたら再度質問させていただけますと幸いです!????‍♀️
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

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

ただいまの回答率
85.36%

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

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

質問する

関連した質問