"Reddit" (サービス接続)

Wolfram言語を使ってRedditに接続し,ユーザアカウント,ポスト,コメント,プライベートメッセージについてのデータを取り出す.

接続と認証

ServiceConnect["Reddit"]でReddit APIへの接続を確立する.以前に保存された接続が見付かった場合には,それが使用される.それ以外の場合には,新しい認証リクエストが起動される.

リクエスト

ServiceExecute["Reddit","request","params"]は,パラメータ params を使って,Reddit APIにリクエストを送信する.以下は可能なリクエストを与える.

プライベートアカウントの情報

リクエスト:

"AccountData" 認証されたユーザアカウントのデータ

"AccountFriends" 認証されたユーザの友だちのリスト

"AccountKarma" 認証されたユーザのカルマのデータ集合

プライベートメッセージ

リクエスト:

"PrivateMessages" 認証されたユーザアカウントからメールボックスを取り出す

パラメータ:
  • "Source""Inbox"メールボックスのソース
    MaxItems25取り出すメッセージの最大数
    "StartIndex"1結果の開始位置
    "ShowThumbnails"Trueサムネイル画像のインポート
  • パブリックアカウントの情報

    リクエスト:

    "UserData" 指定のユーザのプロフィール情報

    パラメータ:
  • "User"認証ユーザユーザ名
  • リクエスト:

    "UserTrophies" 指定のユーザにの獲得トロフィー

    パラメータ:
  • "User"認証ユーザユーザ名
    "Elements""FullData""FullData""Icon"のどちらか
    "ShowThumbnails"Trueサムネイル画像のインポート
  • リクエスト:

    "UserActivity" 最近のユーザアクティビティについてのデータを得る

    パラメータ:
  • "User"認証ユーザユーザ名
    "SortBy""New"ソート方法
    "Type""Overview"ユーザアクティビティのタイプ
    MaxItems25取り出す結果の最大数
    "StartIndex"1結果の開始位置
    "ShowThumbnails"Falseサムネイル画像のインポート
  • Subredditとポストについての詳細情報

    リクエスト:

    "GlobalIDInformation" "GlobalID"のデータを得る

    パラメータ:
  • "GlobalID"(必須)t1_, t3_,あるいはt5_の種類の"GlobalID"のリスト
    "ShowThumbnails"Falseサムネイル画像のインポート
  • リクエスト:

    "PostInformation" ポストについてのデータを得る

    パラメータ:
  • "Post"(必須)ポストのURLまたは"GlobalID"
    "ShowThumbnails"Falseサムネイル画像のインポート
  • リクエスト:

    "SubredditInformation" Subredditについてのデータを得る

    パラメータ:
  • "Subreddit"(必須)subredditのURLまたは"GlobalID"
    "ShowThumbnails"Falseサムネイル画像のインポート
  • ポストとコメントのコンテンツ

    リクエスト:

    "SubredditPosts" subredditからポストを取り出す

    パラメータ:
  • "Subreddit"(必須)subredditのURLまたは"GlobalID"
    "SortBy""New"ソート方法
    MaxItems25取り出すポストの最大数
    "StartIndex"1結果の開始位置
    "ShowThumbnails"Falseサムネイル画像のインポート
  • リクエスト:

    "PostCommentsData" ポストからコメントを取り出す

    パラメータ:
  • "Post"(必須)ポストのURLまたは"GlobalID"
    "Depth"1コメントツリーの深さ
    MaxItems25取り出すポスト数.最大500.深さが1に設定されている場合にのみ使用可
    "StartIndex"1結果の開始位置
    "ShowThumbnails"Falseサムネイル画像のインポート
  • リクエスト:

    "CommentReplyData" コメントからリプライを取り出す

    パラメータ:
  • "Comment"(必須)コメントのURLまたは"GlobalID"
    "Depth"1コメントツリーの深さ
    MaxItems25取り出すポスト数.最大500.深さが1に設定されている場合にのみ使用可
    "StartIndex"1結果の開始位置
    "ShowThumbnails"Falseサムネイル画像のインポート
  • 注意

    "GlobalID"はReddit APIの完全名を参照する.完全名にはオブジェクトの特定のタイプを表す前置詞が含まれる.
  • "t1_"コメント
    "t2_"アカウント
    "t3_"リンクまたはポスト
    "t4_"メッセージまたはPM
    "t5_"subreddit
    "t6_"アワード
  • パラメータの詳細

    次は,"Elements"の可能な設定である.
  • "Icon"画像のリストを返す
    "FullData"平均的な全フィールドを含むデータ集合を返す
    "Source""Inbox","Unread","Sent"の1つ
    "SortBy""New","Top","Hot","Controversial"の1つ."SubredditPosts"リクエストには"Rising"も使用可
    "Type""Overview", "Submitted","Comments","Upvoted","Downvoted","Hidden","Saved","Gilded"の1つ
  • 例題

      (1)

    新たな接続を確立する:

    自分自身のアカウント情報を取り出す:

    特定のユーザの情報を得る:

    複数のユーザの情報を得る:

    subredditを使って自分のアカウントカルマの情報を得る:

    特定のsubreddiから自分のカルマを得る:

    自分のトロフィーの基本情報を得る:

    ユーザリストからトロフィーを得る:

    特定のユーザの詳しいトロフィー情報を得る:

    何人かのユーザの最近のアクティビティ情報を得る:

    特定のポストについての情報を,そのURLを使って得る:

    URLの代りに"GlobalID"を使う:

    いくつかのポストからデータを取り出す:

    特定のsubredditについての情報を得る:

    いくつかのsubredditsについてのデータを取り出す:

    特定のsubredditからポストを得る:

    結果の1つを詳しく調べる:

    別のsubredditからのポストを得る:

    1つのポストを詳しく調べる:

    特定のポストについてのコメントを取り出す:

    組込みの"Profanity"分類器を使って汚い言葉を取り除き,コメントからWordCloudを作る:

    複数のポストからデータを取り出す:

    ポストに対するコメントをレベル4の深さまで取り出す:

    コメントに対するリプライを取り出す:

    複数のコメントに対するリプライを取り出す: