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

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

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

Twitterは、140文字以内の「ツイート」と呼ばれる短文を投稿できるサービスです。Twitter上のほぼ全ての機能に対応するAPIが存在し、その関連サービスが多く公開されています。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

API

APIはApplication Programming Interfaceの略です。APIはプログラムにリクエストされるサービスがどのように動作するかを、デベロッパーが定めたものです。

Q&A

解決済

1回答

1877閲覧

ツイートを取得しYahooAPIで分析するにあたって

退会済みユーザー

退会済みユーザー

総合スコア0

Twitter

Twitterは、140文字以内の「ツイート」と呼ばれる短文を投稿できるサービスです。Twitter上のほぼ全ての機能に対応するAPIが存在し、その関連サービスが多く公開されています。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

API

APIはApplication Programming Interfaceの略です。APIはプログラムにリクエストされるサービスがどのように動作するかを、デベロッパーが定めたものです。

0グッド

0クリップ

投稿2016/11/11 06:26

編集2018/05/09 00:37

タイトルの通り,Twitterのツイートを取得し,YahooAPIにかけてキーフレーズを抽出しようと模索中です。
調べていると以下のようなサイトを見つけました。
【PHP】複数のツイッターユーザーのつぶやきからタグクラウドを生成する!
まさに自分がやりたいことと合致しており,まずは動作確認ということでソースコードを拝借し以下の部分にAPIキーを挿入して実行してみました。

PHP

1//Twitter OAuthパラメータ 2$consumer_key = 'hogege'; 3$consumer_secret = 'hogegege'; 4$access_token = 'fugaga'; 5$access_secret = 'fugagaga'; 6 7//yahooID 8$yahoo_id = 'piyoyo';

結果から言うと,ツイートの取得はできたのですが,YahooAPIが利用できない状態にあります。
上記APIキーの記述以外に付け足す必要がある部分はあるのでしょうか。
なぜ実行できないのか自力では対処できなかったため質問させていただきます。

追記
Yahooデベロッパネットワークの登録,アプリケーションIDの取得はしてあり,yahoo_idにはそちらを入力してあります。

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

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

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

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

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

退会済みユーザー

退会済みユーザー

2016/11/11 06:39

yahoo_id は yahoo_app_id のことであって世間一般でいう ${yahoo_id}@yahoo.co.jp じゃないですよ。
退会済みユーザー

退会済みユーザー

2016/11/11 07:02

ご回答ありがとうございます。Yahooデベロッパネットワークで登録したアプリケーションIDですよね?そちらを入力したのですがうまく動作しませんでした。
guest

回答1

0

ベストアンサー

Yahoo!Japanのご利用ガイドを参照し、アプリケーションIDの発行など、必要な手続きを行ってください。
yahoo_idにはこのアプリケーションIDを指定します。

またAPI提供元(本家)の情報を参照しましょう。

(Yahoo!Japanデベロッパーネットワーク)キーフレーズ抽出
(Yahoo!Japanデベロッパーネット
ワーク)テキスト解析サンプルコード:キーフレーズ抽出

###ブラウザから直接APIをリクエストする方法
http://jlp.yahooapis.jp/KeyphraseService/V1/extract?appid=<あなたのアプリケーションID>&sentence=<対象のテキスト>

###APIのリスエスと回数制限
(Yahoo!Japanデベロッパーネットワーク)利用制限について

投稿2016/11/11 06:42

編集2016/11/11 07:15
Y.H.

総合スコア7914

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

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

退会済みユーザー

退会済みユーザー

2016/11/11 07:04

ご回答ありがとうございます。 アプリケーションIDは既に取得しており,そちらを入力した結果動作しませんでした。 情報不足で申し訳ございません。
Y.H.

2016/11/11 07:09

「動作しませんでした」とは実際にどうなったのでしょう?質問に追記お願いします。(エラーが表示された?httpステータスが400などが返ってきた?)
Y.H.

2016/11/11 07:12

APIを直接ブラウザから実行してエラーが帰ってくるならAPI側の要因でエラーになっている可能性があります。方法を回答に追記します。
Y.H.

2016/11/11 07:17

Yahoo! のAPIのリクエスト回数制限に引っ掛かったとかないですよね? 回答にリクエスト回数制限について追記しました。
退会済みユーザー

退会済みユーザー

2016/11/11 07:38

参考サイトのソースをそのままに,実行すると「ユーザー○○のtweet取得完了!」とのメッセージと共に「エラー:yahoo apiが利用出来ません」と表示されます。 こちらはソースコード内で記述しているエラー文のため動作はしています。
Y.H.

2016/11/11 08:01

追記の「ブラウザから直接APIをリクエストする方法」を試してもらえるとコードが悪いのか環境がわるいのか(利用制限等されている?)はっきりします。
退会済みユーザー

退会済みユーザー

2016/11/11 11:31

「ブラウザから直接APIをリクエストする方法」を試したところ,正常にキーフレーズの抽出に成功しました。利用制限はされていないようです。お手数お掛けします。
Y.H.

2016/11/11 11:46

どっちでエラーになってるか確かめてください。 if (CURLE_OK !== $errno) { //curlエラー発生 return null; } //結果をxmlで取得 $xml = new SimpleXMLElement($result); if (is_object($xml) && property_exists($xml, "Message")){ //yahoo apiエラー発生 return null; } もし、後者なら$resultの中にきちんと想定通りのXMLが入ってるかも確認してください。 初心者といえどPHPは使える(使おうとしている)んですよね?
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問