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

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

ただいまの
回答率

90.99%

  • teratail

    396questions

    teratail(テラテイル)は、プログラミングに特化した日本語Q&Aサイトです。

teratail の過去遺産をもっと活用したい

解決済

回答 4

投稿

  • 評価
  • クリップ 6
  • VIEW 756

te2ji

score 9893

自身でした質問への回答や、回答の際に引用したサイト等、ふと確認したいタイミングがあるのですが、現在の teratail の検索窓では、そういった使用方法は想定していないようです。

自身が関わった質問(質問した/回答した/コメントした/評価した)に対しての検索を実施するにはどのように行うと、効率よく情報を引き出せるでしょうか?

今は、google でsite:teratail.comを指定して、思い出せる範囲のキーワードで検索しているのですが、あまり効率の良い結果は得られていません。

うまい方法があれば、ご教示意いただきたく、お願いします。

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

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

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

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

回答 4

+6

teratailにはAPIがあるので利用されてはいかがでしょうか?

ドキュメントを見たところ、質問内容に近いことができそうです。
http://docs.teratailv1.apiary.io/#introduction

curlでAPIを叩き、jsonをパースするだけなのでここで培った知見が役に立つのではないでしょうか?

あとで読む系のPocketinstapeperのAPIと連携させればURLのクリップが自動化できたり

webクリップのEvernoteのAPIと連携して、過去の資産を全部ノート化するのも面白そうです。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2017/09/15 12:54

    たしかに自作もありですね。
    あんまり考えてませんでした。
    ありがとうございます。

    キャンセル

checkベストアンサー

+3

御自身が関わっておられる回答であれば、御自身のIDで検索すれば抽出可能です。
タグで抽出したいときは、Myタグなどの何らかのタグをクリックすれば抽出されます。
但し、タグはフィルタリングだけで、キーワード検索の対象ではないようです。

その他には、御自身の回答の隅やコメントにでも検索したいキーワードをMyルールで入れておくなど。
自分にとっての重要度なんか良さそうですよね。A,B,C,S,S+とか。

書き忘れてましたが、クリップは当然ご存知ですよね。

投稿

編集

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2017/09/15 00:22 編集

    低評価された方は理由をコメントして貰えたら嬉しいです。
    何だろ?タグの事かな?

    キャンセル

  • 2017/09/15 12:50

    自分の ID って、ちゃんとキーワードとして認識されるんですね。
    いくつか検索した時に、うまく拾えなかったので機能しないものだと思っていました。
    ex) 「te2ji OpenSSL」 で「amazon linux へ OpenSSL 1.0.2 を導入する方法」って質問が検索できないんです。

    検証していないのですが、組み合わせた方のキーワードが認識されなかったのかもしれないですね。

    かなり検索したい箇所への到達が早まりそうです。
    ありがとうございました。

    キャンセル

  • 2017/09/15 13:29

    「amazon linux へ OpenSSL 1 0 2 を導入する方法」のようにドット(.)を入れなければHITしました。
    ただ、このキーワードでもIDを組み合わせるとHITしなくなります。
    この記事はID入れてもHITするので、タイトルと本文の検索で何かしら条件が違うのでしょうね。

    キャンセル

  • 2017/09/15 13:36

    横からスイマセン。
    どうも、古い過去データは検索できない様ですね。アクティブから探しているのかもしれません。

    ユーザーIDだけで検索しても、ヒット数はやたらと少ないですしね。
    もちろん、googleで検索するとヒットするようです。

    キャンセル

  • 2017/09/15 13:55 編集

    成程。そうすると過去記事の検索用のユーザIDは別物になっているということになりますね。
    じゃあ、or 検索ならとやってみましたが、件数が多すぎるようでエラーになりましたOTZ

    キャンセル

  • 2017/09/15 15:50

    私の古い質問に関して、検索結果を確認してみました。

    【phpによるリンク切れチェック手法の最適解は? 2016/03/27 22:49 投稿】
    タイトルのみ ○ タイトルとユーザ名 ☓
    2番めに古い投稿です。

    【Amazon Linux で mod_evasive が効かない。。。 2016/01/09 13:10 投稿】
    タイトルのみ ☓ タイトルとユーザ名 ☓
    1番古い投稿です。

    1年半ぐらいのところにしきい値があるんですかね?

    キャンセル

  • 2017/09/15 15:57 編集

    「mod_evasive が効かない」だと検索できますね…「Amazon mod_evasive が効かない」だと検索できない。さらに、「Amazon mod_evasive」でも検索できない。
    法則性が良く分からないですね。

    キャンセル

  • 2017/09/15 15:57

    もうそうなると、ブラウザのブックマークで整理していくしか無いですね。
    カテゴリ別とか重要度別とか視点を切り替えたもので整理しておく。。。
    限りなく面倒くさいですね。OTZ

    キャンセル

  • 2017/09/15 16:01

    それか、APIを使って自分にとって都合の良い検索システムを作るかですね。スキルと好みの問題、というところでしょうか…

    キャンセル

  • 2017/09/15 16:05

    運営さんがここ見て改善してくれるのが一番ですけどね。
    意見で出してもフィードバックが無いので、どう扱われているかも分かりませんし。

    キャンセル

  • 2017/09/15 16:09

    運営さん、teratailタグ付いてるのは見ているらしいですよ。(集まっtailで言ってました)
    改善してくれるかどうかは、また別の話ですが…

    最近、色々とアップデートしているみたいですし、大きな声になれば、機能追加があるかもしれませんね。

    キャンセル

+3

TeratailAPIのお題が少し面白かったので、過去の自分の回答から特定のワードを含む質問のIDを取得する機能をPHPで作ってみました。
もうちょっと作りこめば、それなりに使えるものになるかもしれません。
自分以外の人も検索できるようにしたり、質問も検索したり、回答内容の一部を表示したり…

パパっと作ったので、何か突っ込みがあればコメント頂けると嬉しいです。

リクエストページ(検索ワード入れて検索)

<html>
    <form method="POST" action="searchMyAnswes.php">
        <input type="text" name="searhWord">
        <input type="submit" name ="sub">
    </form>
</html>

APIを使って過去の自分の回答を検索する。

<?php
    if (!isset($_POST['searhWord']) || trim($_POST['searhWord']) === ''){
        echo '検索ワードを入れて。ブラウザバックで戻って';
        return;
    }
    $searchWord = $_POST['searhWord'];
    $getTeratailAPI = new getTeraTailAPI();
    $getTeratailAPI->getMyAnswers($searchWord);

    class getTeraTailAPI
    {
        /***
         * APIを使って自分が回答した内容を検索する
         */
        public function getMyAnswers(String $searchWord){
            $resultArray = $this->callAPI();
            $meta = $resultArray['meta'];
            //リクエストに失敗したら処理終了
            if($meta['message'] != 'success'){
                echo $meta['message'];
                return;
            }
            $returnQuestions = $this->searchWord($resultArray['replies'], $searchWord);
            //回答を100件以上していたらページネーション
            if($meta['hit_num'] > 100){
                $page = ceil($meta['hit_num'] / 100);
                for($i=2;$i<$page+1;$i++){
                    $resultArrayAdds = $this->callAPI($i);//2ページ目以降
                    $returnQuestionsAdded =  $this->searchWord($resultArrayAdds['replies'], $searchWord);
                    $returnQuestions =  array_merge($returnQuestions, $returnQuestionsAdded);
                }
            }
            //画面に質問番号を一覧で表示
            foreach ($returnQuestions as $value) {
                echo $value.nl2br("\n");
            }
        }
        /**
         * 実際にAPIを実行する処理。取得結果を配列にデコードして返却
         * @param type $page
         * @return type APIをJSON_DECODEした結果
         */
        private function callAPI($page=0) {
            $username = 'motuo';        
            $access_token = 'your access token';
            $url = 'https://teratail.com/api/v1/users/'. $username .'/replies?limit=100';
            if($page){
                $url .= '&page='.$page;
            }
            $curl = curl_init();
            curl_setopt($curl, CURLOPT_URL, $url);
            curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'GET');
            curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
            curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false); // 証明書の検証を行わない
            curl_setopt($curl, CURLOPT_HTTPHEADER, array('Authorization: Bearer '.$access_token));

            $result = curl_exec($curl);
            curl_close($curl);
            return json_decode($result,true);
        }
        /**
         * 配列内から検索ワードに該当する質問IDを配列で返却
         * @param array $replies
         * @param String $searchWord
         * @return array
         */
        private function searchWord(Array $replies,String $searchWord) {
            $questions = [];
            foreach ($replies as $value) {
                if(strpos($value['body'],$searchWord)){
                    array_push($questions, $value['question_id']);
                }
            }
            return $questions;
        }
    }
?>

投稿

編集

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2017/09/15 13:08

    作成ありがとうございます。

    キャンセル

-2

teratailの中で過去事例を探すよりも、
ふつうにインターネット上で有用な事例を探した方が楽に回答できること。
(Google先生、Qiita先生、などなど。)

有用な事例を見つけたときにwebブラウザのブックマークや、
ソーシャルブックマークサービスの類に登録したりしているので、
そこから引き出したほうが早いこと。

以上の理由から、
teratailに検索機能の高度化をそんなに求めてないです。

まぁ、ユーザーページ内
(例えば https://teratail.com/users/m6u とかって)
で検索できると面白いかもしれませんけど。

自分が楽に回答するための工夫まで、
teratailに求めないでしょう。

余談ですが、
掲示板開発質問ネタが後をたたないので、
鉄板回答まとめみたいなのを作っとけば、
ある種のそうにはヒットしそうですが。

投稿

編集

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2017/09/15 13:03

    質問が増えてくると、タイトルもあやふやだったりするんで、やっぱり全文検索が欲しくなるんですよねぇ。。。

    キャンセル

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

  • ただいまの回答率 90.99%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる

関連した質問

  • 解決済

    jupyterでモジュールの更新が上手くいきません

    いつもお世話になっております。 最近jupyterを使い始めたのですが、 外部モジュールの更新が上手くいかず、困っております。 以下のサンプルソースのように、 幾つ

  • 解決済

    Javascript 連想配列 条件つき 加算

    以下のような連想配列がありますが、dateとidが同じ個所のhours を加算の仕方を教えていただけないでしょうか。 結果としては以下のようなhours の合計を表示させたのです

  • 解決済

    ContainerViewControllerでTableViewを表示できない

    ContainerViewControllerでTableViewを表示しようとすると 「Terminating app due to uncaught exception 'N

  • 解決済

    UberのiOSアプリで使用しているMapについて

    UberのiOSアプリで使用しているMapについて これはどの地図APIを使用しているかご存知の方 いらっしゃいますでしょうか。 今位置情報を元にしたFoursquare

  • 解決済

    Swift NavigationContollerの画面遷移をフェードインで行いたい

    Storyboadを使い、NavigationContollerにて画面遷移を行なっております。 Firstviewにボタンを起き、Ctrl + ドラッグでSecondviewに

  • 解決済

    cloud9のコマンドラインの出し方

    わからないこと cloud9を使っていて、コマンドラインを消してしまって出し方がわからなくなってしまいました。 いろいろ探してみましたが見つかりませんでした。 とても

  • 解決済

    IntelliJ IDEA でKotlinの実行ができない

    実現したいこと IntelliJ IDEAで Kotlinのプログラムを実行したいです。 しかしエラーが表示されてしまいます。 ソースコード package sampl

  • 解決済

    vb2017でexcel2016操作

    vb2017を使っています。 communityです。 excel2016を開いてセルのデータを読み込みたいと思っています。 参考にしているサイトです。 http://d.

同じタグがついた質問を見る

  • teratail

    396questions

    teratail(テラテイル)は、プログラミングに特化した日本語Q&Aサイトです。