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

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

新規登録して質問してみよう
ただいま回答率
85.48%
Google スプレッドシート

Google スプレッドシートは、フリーで利用できる表計算ソフト。Webアプリのためインターネットに接続することで利用できます。チャートやグラフの作成のほか、シートを他のユーザーと共有したり、同時に作業を進めることも可能です。

Google API

Googleは多種多様なAPIを提供していて、その多くはウェブ開発者向けのAPIです。それらのAPIは消費者に人気なGoogleのサービス(Google Maps, Google Earth, AdSense, Adwords, Google Apps,YouTube等)に基づいています。

Q&A

0回答

760閲覧

スプレッドシートでNatural Languageを使用できるようにしたい

RED-D

総合スコア0

Google スプレッドシート

Google スプレッドシートは、フリーで利用できる表計算ソフト。Webアプリのためインターネットに接続することで利用できます。チャートやグラフの作成のほか、シートを他のユーザーと共有したり、同時に作業を進めることも可能です。

Google API

Googleは多種多様なAPIを提供していて、その多くはウェブ開発者向けのAPIです。それらのAPIは消費者に人気なGoogleのサービス(Google Maps, Google Earth, AdSense, Adwords, Google Apps,YouTube等)に基づいています。

0グッド

0クリップ

投稿2020/08/02 18:36

GoogleスプレッドシートでNatural Language APIリクエストする際、エラー: 400が発生する

初心者のため、説明の要領が得ない点が多々あるかと思います。
ご指摘いただければ幸いです。

ITFFFを使い、キーワードを含むツイートをgoogleスプレッドシートに自動転記しております。
スプレッドシートに入力されているツイートの感情分析ができればと思い、
こちらのページ(https://qiita.com/TakeshiNickOsanai/items/84cdd0da017a5d5d56b9)を参照し
初めてGASに触れましたが、Exception: https://language.googleapis.com のリクエストに失敗しました(エラー: 400)。というエラーが発生し、にっちもさっちもいかなくなってしまいました。

下記、ご参照いただき、ご助言いただければ幸いです。
よろしくお願い申し上げます。

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

Exception: https://language.googleapis.com のリクエストに失敗しました(エラー: 400)。サーバー応答の一部: { "error": { "code": 400, "message": "One of content, or gcs_content_uri must be set.", "status": "INVALID_ARGUMENT", "details": ...(応答の全文を見るには muteHttpExceptions オプションを使用してください) at retrieveSentiment(retrieveSentiment:28:30)

該当のソースコード

【retrieveSentiment】 function retrieveSentiment (textData) { var apiKey = 'XXXXX'; var apiEndpoint = 'https://language.googleapis.com/v1/documents:analyzeSentiment?key=' + apiKey; // Create a structure with the text, its language, its type, // and its encoding var docDetails = { language: 'ja-jp', type: 'PLAIN_TEXT', content: textData }; var nlData = { document: docDetails, encodingType: 'UTF8' }; // Package all of the options and the data together for the call var nlOptions = { method : 'post', contentType: 'application/json', payload : JSON.stringify(nlData) }; // And make the call var response = UrlFetchApp.fetch(apiEndpoint, nlOptions); Logger.log('json is :' + response) return response; } 【getSentiment】 // 取得したい開始行と終了行を記述 var start = '2'; var end = '1000'; // シート情報取得 var mySheet = SpreadsheetApp.openById('XXXXX').getSheetByName('XXXXX'); function getSentiment() { // 開始行と終了行でループを回す for (i = start; i <= end; i++) { var tweet = mySheet.getRange(i, 1).getValue(); var response = retrieveSentiment(tweet); var json = JSON.parse(response); var score = json['documentSentiment']['score']; var magnitude = json['documentSentiment']['magnitude']; // 取得したScore Magnitudee,Jsonをシートに記述 mySheet.getRange(i, 2).setValue(score); mySheet.getRange(i, 3).setValue(magnitude); mySheet.getRange(i, 4).setValue(response); } }

試したこと

ネットで検索を行いましたが、おそらく私の理解度が足りないためか問題点が分かりませんでした。
現在勉強中でございますが、皆さまのお知恵をお貸しいただければ幸いです。
よろしくお願い申し上げます。

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

ここにより詳細な情報を記載してください。

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

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

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

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

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

guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

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

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

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問