テニスの試合に対するTwitter投稿の傾向

目次

1.はじめに

 近年、スポーツに興味を持つ人が増加し、スポーツ観戦をする人が増えている。スポーツマーケティング調査[1]にも「スポーツ観戦が好き」という人が増加したという結果が出ている。2019年4月5日から14日にかけて行われた、第27回「人気スポーツ」調査[2]では、2019年における好きなスポーツランキング1位は23年連続で野球(42.8%)、2位3位には昨年同様サッカー(22.8%)、相撲(20.1%)と続き4位はプロテニス(19.8%)、5位はプロゴルフ(9.4%)となっている。また、近年リアルタイムで生の声が反映されるTwitterなどのSNSが普及しており、Neuro-Insightの調査[3]によるとテレビでスポーツ観戦をしながらSNSを利用するユーザーが増えていることがわかっている。特にプロテニスに着目すると上位にはランクインするものの、野球やサッカー、相撲には及ばないことがわかる。ここからテニスが野球やサッカー、相撲ほどの人気がない理由として「野球などと比べて試合中に盛り上がる場面が少なく、ユーザーが熱狂的にはならないのではないか」と仮説を立てた。 曵地氏の研究[4]では、野球は得点時にツイート数が多くなるため、試合の総得点や得点シーンが多いほど総ツイート数が多いと考えられている。テニスの場合は、得点を得る行為は必ず発生する場面であるため、どのような場面でツイート数が多くなるかはわかっていない。

 本研究では、Twitterでつぶやかれたツイートを大会表記の選手名で取得し、グラフ化することによって、いつ、どのような場面が盛り上がり、どのタイミングでユーザーがつぶやくのかを見つけ、考察し、仮説を立証することを目的とする。

 本論文の構成は次の通りである。

 2章では、調査前の準備としてテニスのルールや大会の概要、Twitter用語の説明を行う。

 3章では、行った調査方法の説明と調査結果について述べる。

 4章では、得られたデータに対して考察を行う。

 5章でまとめる。

 まとめの後に参考文献と付録を載せる。

2.準備

2.1 テニスとは

2.1.1 基本的なルール

 テニスはシングルスでは1人対1人、ダブルスでは2人対2人で試合を行う。大会によってルールは異なるが、基本的に大会は3セットマッチで先に2セットを取得した方が勝利となる。4大大会のみ男子シングルスでは5セットマッチで先に3セット、女子シングルスやダブルスでは3セットマッチで2セットを先取することで勝利となる。また、シングルスとダブルスでは使用されるコートの範囲が変わる。テニスコートは図1の通りである。シングルスとダブルスの違いはサイドラインで、シングルスの方が狭いコートで試合をすることになる。 試合前にはコイントスを行い、プレーするエンドを決めるコートサイドか第1ゲームにサーブもしくはレシーブをするサーブ権、レシーブ権の選択をする。この他にも先に選択する権利を相手に譲渡するという選択ができる。 1ゲームは先に4ポイントを取得した方が獲得するが、両者が3ポイントを取得した場合「40-40」となりデュースとなる。デュースになった場合は先にポイントを取ったプレイヤーをアドバンテージ(A-40)と呼び、その状態から連続してポイントを取得することでゲームを獲得できる。ゲームを先に6ゲーム取得すると1セットを獲得できるが、ゲームカウントが5-5となった場合は「7-5」のような2連続でゲームを取ることで1セットを獲得できる。また、ゲームカウントが6-6となった場合にはタイブレークとなる。タイブレークでは先に7ポイント取得したプレイヤーがセットを獲得できるが、ポイントカウント6-6となった場合には2ポイント差がつくまで行う。また、タイブレークでは2ポイント毎に交代でサーブを行う。後1ポイントで勝敗が決まるポイントのことをマッチポイントと呼び、大会決勝戦ではチャンピオンシップポイントと呼び方が変わる。1セットは最短24ポイントで、要する平均時間は30~40分、長いと1時間以上を要するため、テニスの試合は長時間に及ぶことが多い。

テニスコートのライン一覧

図1. テニスコートのライン一覧

2.1.2 ATPワールドツアー

 本研究では、ATPワールドツアー内の上海・ロレックス・マスターズの3試合を対象としている。ATPワールドツアーとは男子プロテニス協会(ATP:Association of Tennis Professionals)が主催する大会の総称で、ツアーはグランドスラムと呼ばれる4大会(全豪、全仏、ウィンブルドン、全米)を頂点として、マスターズ1000、ツアー500、ツアー250とピラミッド状にランク付けされている。1年にわたってATPツアーは開かれるが、開催場所や時刻は大会によって様々で選手はこれらの大会でポイントを稼ぐことで、よりランクの高い大会への出場権を得ることができる。本研究ではマスターズ1000に該当する「上海・ロレックス・マスターズ」を対象としている。 女子ツアーはWTAワールドツアーと呼ばれる。各大会のポイントや開催数を表1,2に示す。 ATPワールドツアーはwowowやスカイA、DAZN、gaoraなど様々なチャンネルで放送されるが、本研究で利用したチャンネルはgaoraである。 2019年に開催されたATPツアー大会の総数は63大会(グランドスラムを含め67大会)で、総観客動員数は482万人であった。[5]

表1 男子ツアーの各大会のポイント

男子 グランドスラム ATPマスターズ1000 ATP500 ATP250
優勝 2000 1000 500 250
準優勝 1200 600 300 150

表2 女子ツアーの各大会のポイント

女子 グランドスラム プレミアマンダトリー プレミア5 プレミア
優勝 2000 1000 900 470
準優勝 1300 650 585 305

2.1.3 近年のプロテニスの動向

2.1.3.1 スター選手

 日本では男子は「錦織圭」選手、女子は「大坂なおみ」選手といったスター選手がいる。他の国にも「ラファエル.ナダル」選手や「ノバク.ジョコビッチ」選手、「ロジャー.フェデラー」選手を始めとする他国のスター選手が数多く存在する。大会で優勝したり、優勝候補である対戦相手を打ち負かすといった快挙を果たすことで注目され始め、ファンも増えていく。

2.1.3.2 観戦の仕方

 観戦方法としては「開催される大会の現地に赴く」もしくは「wowowやgaoraといったスポーツチャンネルに入会し、TVを視聴する」と言った方法がある。自国の選手の試合は無料チャンネルで放送されることがある。

2.1.3.3 試合の特性

 コースを変えてサーブを打ったり、そのサーブスピードが200キロを超えることもあるため、試合はサーバー側が基本的に有利である。そのため、他のスポーツと比べてサービスエースが多い。サーバー側がゲームを取ることが多く、これを「キープ」と言い、レシーバー側がゲームを取ることを「ブレーク」と言う。対等な試合ではブレークは起きにくく、1つのブレークが試合の勝敗に繋がることがある。サービスを2回連続で失敗することをダブルフォールトと言い、相手のポイントになり、ブレークのきっかけにもなる。そのためファーストサーブを失敗した場合は、速さよりも安定性に重点を置いてサービスをする選手が多い。

2.2 Twitterとは

 Twitter[6]とは、マイクロブログの一種でツイートと呼ばれる半角280文字、日本語では全角140文字以内の文章と画像、動画、URLなどのメッセージを投稿することができるソーシャルネットワークサービス(SNS)である。Twitterで主に使用される用語を表3に示す。本研究ではリツイートされていないツイートを対象とする。 また、Twitterには特定のトピックに関する投稿を、公式のTwitter検索から一覧して見ることができるように、キーワードの前に「#」を置いて投稿するハッシュタグ機能が存在する。タイムライン上のツイート内のハッシュタグを押すことで同じハッシュタグが含まれるツイートを検索することができる。 2019年4月時点でのTwitter利用者数は3億3000万人を超えており、その中でも日本は世界で2番目に利用者が多い。[7]

Twitterのスクリーンショット

図2 Twitterのスクリーンショット

表3 Twitterで使用する主な用語集

用語 説明
ツイート メッセージを投稿すること。つぶやきとも言う。
リツイート 他人を含めたつぶやきを再投稿すること。自分のフォロワーへの話題提供になる。
タイムライン フォローしている人の投稿やリツイートが時系列に並べて表示される画面。
リプライ 他ユーザー宛ての投稿。「@ユーザー名」でリプライすることができ、元のツイートと関連付けられる。
フォロー 他ユーザーのツイートを自分のタイムラインに表示できるように登録すること。相手ユーザーのフォロワーになる。
フォロワー 自分のことをフォローしている他ユーザー。
ブロック 特定ユーザーからのフォローを拒否すること。他にも特定ユーザーのツイート閲覧やいいね、リツイートができなくなる。
ミュート 特定ユーザーのツイートをタイムライン上で非表示にする。
ハッシュタグ キーワードの前にある「#」のこと。特定のトピックに関するハッシュタグを共用することで投稿を検索しやすくなる。
リスト 選んだユーザーのみのタイムライン表示を作る機能。
いいね 気に入った投稿についている?ボタンを押すことでツイートの人気投票ができる。タイムラインにはいいねを押した人数が表示される。「いいね」を付けた投稿を一覧表示することもできる。
ダイレクトメッセージ 特定のユーザーに第三者には見ることができないメッセージを送る機能。
ボット 自動的にツイートを行うプログラム。
スパム 多用されているハッシュタグを悪用して、特定のトピックとは無関係のツイートにハッシュタグを乱用する。ツイート、ハッシュタグの検索画面に便乗して広告を載せるなどの企みに使われる。

3.ツイートの観測

 本研究では、上海・ロレックス・マスターズ大会で行われた3試合を対象にTwitter4j[8]と呼ばれるAPI(プログラムは付録を参照)を利用してツイートを収集した。 検索キーワードは大会表記の選手名、時間は試合開始の1時間前から試合終了の1時間後までを対象としている。錦織圭選手の場合は「N.Kei」「NishikoriKei」となる。

3.1 調査1 盛り上がり場面の分析

 調査1では対象時間中につぶやかれたツイート数1分間隔で集計し、その数とビデオの内容を見比べ、盛り上がっている場面を調査した。次にその調査結果を示す。

3.1.1 決勝戦

 日本時間2019年10月13日(日)17:30~19:00にかけて上海で行われたD.Medvedev対A.Zverevの決勝戦である。

 1セット第2ゲーム目、メドベーデフがラリー戦で3連続ポイントを取得し、ブレークに成功する。第5ゲーム目はズベレフにブレークポイントが来るがメドベーデフが3連続ポイントを取得し、デュースに持ち込んだ。しかしメドベーデフにフォアハンドのミスがありズベレフがブレークバックに成功する。第10ゲーム目にはズベレフのバックハンドやスマッシュのミス、ダブルフォールトがありメドベーデフがブレークして1セットを先取した。 その後の第2セットでもズベレフのミスショットやダブルフォールトが目立ちメドベーデフがブレークを2回し、最後はサービスエースで勝利を収めた。

 第3シードのダニール・メドベーデフが第5シードのアレクサンダー・ズベレフをセットカウント2-0で破り、上海マスターズ初の優勝を飾った。

表4 決勝戦(D.Medvedev-A.Zverev)の試合結果

第1セット 1 2 3 4 5 6 7 8 9 10 11 12 13
D.Medvedev
A.Zverev
第2セット 1 2 3 4 5 6 7 8 9 10 11 12 13
D.Medvedev
A.Zverev

〇:キープ、●:ブレーク

決勝戦のツイート遷移

図3 決勝戦のツイート遷移

表5 決勝戦における試合内容の詳細

番号 時刻 ツイート数 内容
18:28~18:29 19 メドベージェフがブレークし、1セットを先取
18:51~18:52 10 メドベージェフが5ゲーム目を取得する
19:01~19:02 18 試合終了、セレモニーが開始する

 決勝戦では総ツイート数が482ツイート、試合時間が1時間30分であった。 また、盛り上がりの山の内容に着目したのが表5である。セット・ゲームポイントの取得時および試合終了時にツイート数が増加していることがわかる。 決勝で最も盛り上がりを見せた場面は18:28~18:29に起きた19ツイートのメドベーデフが1セットを取得した時であった。

3.1.2 準決勝戦

 日本時間2019年10月12日(土)の17:30~19:20にかけて上海で行われたD.Medvedev対S.Tsitsipasの準決勝戦である。

 第1セット終盤まで両者ブレークポイントを与えずにキープの展開が続いたままタイブレークに突入。タイブレークでも拮抗した試合であったが、チチパスのバックハンドなどのミスによりメドベーデフが第1セットを先取する。第2セット3ゲーム目チチパスがスマッシュやサービスエースを決めるがダブルフォールトを2回し、デュースへ。メドベーデフがバックハンドのダウンザラインへのパッシングショットが決まりブレークに成功する。第10ゲームでメドベーデフに連続ミスがあり、チチパスがブレークバックに成功する。しかし第11ゲーム、チチパスが連続ミスし、メドベーデフの深いリターンでブレークに成功する。その後第12ゲームはメドベーデフがキープし勝利した。

 第3シードのダニール・メドベーデフが第6シードのステファノス・チチパスをセットカウント2-0で破り、上海マスターズ初の決勝進出を決めた。

表6 準決勝戦(D.Medvedev-S.Tsitsipas)の試合結果

第1セット 1 2 3 4 5 6 7 8 9 10 11 12 13
S.Tsitsipas 6(5)
D.Medvedev 7(7)
第2セット 1 2 3 4 5 6 7 8 9 10 11 12 13
S.Tsitsipas
D.Medvedev

〇:キープ、●:ブレーク

準決勝戦のツイート遷移

図4 準決勝戦のツイート遷移

表7 準決勝戦における試合内容の詳細

番号 時刻 ツイート数 内容
17:44~17:45 2 アップが終了し、試合が開始する
18:52~18:53 3 チチパスが3ゲーム目を取得する
19:17~19:18 3 メドベージェフが6ゲーム目を取得する
19:22~19:23 4 試合が終了する

 準決勝戦では総ツイート数が111ツイート、試合時間が1時間50分であった。また、盛り上がりの山の内容に着目したのが表7である。 この試合では盛り上がりと呼べる山はなく、小さな山はゲーム取得時や試合開始・終了時であった。準決勝で最も盛り上がりを見せた場面は19:22~19:23に起きた4ツイートの試合終了時であった。 決勝戦と比較すると同じ盛り上がり場面にも関わらず、総ツイート数に300ツイート以上の差が見られた。

3.1.3 準々決勝戦

 日本時間2019年10月11日(金)19:30~21:45にかけて上海で行われたA.Zverev対R.Federerの準々決勝戦である。

 第1セット第6ゲーム目にズベレフがブレークし、そのままキープを続けて1セットを先取する。第2セットではブレーク、ブレークバックを両者行い、第12ゲームのズベレフのサービングフォーザマッチ、40-0でズベレフのマッチポイントの状況からフェデラーが6連続ポイントを取り、土壇場でブレークバックに成功し、タイブレークに突入する。タイブレークでは両者ミニブレークをするが、2セット目を制したのはフェデラーであった。ファイナルセットでは第2ゲーム目にズベレフがブレークに成功し、その後は両者キープが続き、ズベレフが勝利した。

 第5シードのアレクサンダー・ズベレフが第2シードのロジャー・フェデラーをセットカウント2-1で破り、上海マスターズ2年連続2回目の準決勝進出を決めた。

表8 準々決勝戦(A.Zverev-R.Federer)の試合結果

第1セット 1 2 3 4 5 6 7 8 9 10 11 12 13
A.Zverev
R.Federer
第2セット 1 2 3 4 5 6 7 8 9 10 11 12 13
A.Zverev 6(7)
R.Federer 7(9)
第3セット 1 2 3 4 5 6 7 8 9 10 11 12 13
A.Zverev
R.Federer

〇:キープ、●:ブレーク

準々決勝戦のツイート遷移

図5 準々決勝戦のツイート遷移

表9 準々決勝戦における試合内容の詳細

番号 時刻 ツイート数 内容
20:55~20:56 49 ズベレフがマッチポイント
21:07~21:08 72 フェデラー1セット取得(巻き返し)直後
21:47~21:48 57 試合が終了する

 準々決勝では総ツイート数が2245ツイート、試合時間が2時間15分であった。前述した2試合と比べて総ツイート数が多いことが確認できる。また、盛り上がりの山の内容に着目したのが表9である。試合終了時およびゲーム・セットポイントの取得時にツイート数が増加していることがわかる。 準々決勝ではフェデラーがセットカウント0-1、ゲームカウント5-6のマッチポイントで残り1ポイントで負けそうな状況から6連続ポイントを取り、さらにタイブレークでも1セットを取る土壇場からの巻き返しがあった。 準々決勝で最も盛り上がりを見せた場面は21:07~21:08に起きた72ツイートの巻き返しの場面であった。

3.2 調査2 ユーザーのツイートタイミングの分析

 調査2では試合ビデオを視聴して対象時間中につぶやかれたツイートがプレイ中なのかプレイ外なのかを集計し、ユーザーがつぶやくタイミングを調査した。テニスの休憩時間に関するルール[9]として「エンド交代時はゲームが終わり、ボールがアウトオブプレーになった瞬間から次のゲーム、第1ポイントのボールを打つまでの90秒間、コートチェンジ休憩がある」、「各セットが終わったときは最長120秒間の休憩をとる」ことができる。ここから休憩時間はプレイ外であると定義した。また、調査1(図3~図5)から試合開始1時間前や試合終了1時間後にもツイートされていることがわかるが、試合中ではないため、同様にプレイ外と定義した。 上記から、ゲーム、セット取得後の休憩時間、試合開始前の1時間、試合終了後の1時間をプレイ外として対象範囲とした。次にその調査結果を示す。

3試合のツイートタイミング

図6 3試合のツイートタイミング

 図5を見ると総ツイート数が多い準々決勝では、「プレイ中」につぶやかれたツイートの割合が多く、総ツイート数の少ない準決勝は「プレイ中」の割合が最も少ない。 一方で「ゲーム間休憩」のツイート割合は総ツイート数が少ない準決勝であるほど占める割合は多かった。

3.3 調査3 ユーザーのツイート内容の分析

 調査3では各試合でツイート数が多い上位2人のユーザーを対象にツイート内容を確認し、ユーザーがどれほど熱狂しているのか、どのような点に着目しているのかを調査した。上位2人のユーザー選定について、botやスパムは除外している。最も総ツイート数が多い準々決勝を例にユーザーツイートを次に示す。

ユーザーAのツイート内容例

図7 ユーザーAのツイート内容例

ユーザーBのツイート内容例

図8 ユーザーBのツイート内容例

 ユーザーAはツイート数15で試合中最多のツイート数であった。内容は図7のようにゲーム、セット間の変動を載せたツイートのみであった。 ユーザーBはツイート数12で2番目にツイート数が多かった。内容はユーザーAのようなゲーム、セット間の変動ツイートの他に図8のような詳細な状況を載せたツイートが見られた。  3試合分の上位2人のツイート(計44ツイート)を閲覧したが、熱狂的なツイートは土壇場からの巻き返しがあった準々決勝の場面で「Too good!」とつぶやかれていたわずか1ツイートであった。ここでの熱狂的とは「うおおおお!」と言ったツイートである。

4.考察

 「3 調査」では、上海・ロレックス・マスターズの決勝、準決勝、準々決勝の3試合を対象に試合の開始1時間前から終了1時間後までの範囲でツイートを収集し、盛り上がりの場面やユーザーのつぶやきタイミングをグラフ化することによって分析を行った。  調査1では、対象時間中につぶやかれたツイート数を集計し、その数とビデオの内容を見比べ、盛り上がっている場面を調査した。 最も盛り上がる場面は決勝ではメドベーデフが1セットを取得した時、準決勝では試合終了時、準々決勝では負け寸前の状況からフェデラーが6連続ポイントを取り、さらにタイブレークでも1セットを取る巻き返しの場面であった。 決勝、準々決勝では2番目に盛り上がった場面が試合終了時であることを考慮すると、普段あまり起こらない場面が起きた時に試合終了時よりも盛り上がると考えられる。 3試合を比較して見ると図3,4,5から決勝が482ツイート、準決勝が111ツイート、準々決勝が2245ツイートと総ツイート数に大きく差が開いていることが確認できる。 プロテニスは基本的にサーブ側で有利であるため、ブレークが起きにくく、ブレークできれば勝利に繋がることが多い。決勝ではブレークをしてセットを取得しており、準々決勝では巻き返しの場面の発端はブレークからで、その後セットを取得した。一方で準決勝ではブレークは起きたものの、セット取得と出来事は重なっていない。このようにブレークというあまり起こらない出来事とセット取得と言った2つの出来事が重なったことにより、試合終了時よりも盛り上がり、総ツイート数が増えたと考えられる。

調査2では、対象時間中につぶやかれたツイートがプレイ中なのかプレイ外なのかを集計する事でユーザーがつぶやくタイミングを調査した。 図6から決勝、準決勝、準々決勝の3試合において、プレイ外でつぶやかれている割合が過半数を占めていることがわかる。プレイ外につぶやかれた割合が多い要因として、テニスは試合展開が速く、1ポイント毎にツイートしている時間がないことが考えられる。 その中でも、総ツイート数が少ない準決勝はプレイ外が80%、プレイ中が20%とプレイ中につぶやく割合は少なく、ゲーム間休憩が占める割合が33%と3試合の中で最も割合を占めていた。「プレイ中」の占める割合が少ないことを考慮すると、準決勝について特筆すべき場面がゲームカウントの変動時程度しかなかったため、プレイ中につぶやく割合が少なく、結果として総ツイート数も少なかったと考えられる。一方で総ツイート数が多い準々決勝はプレイ中が37%と3試合の中で最も割合が多いことが確認できる。これは、土壇場からの巻き返しといった普段あまり起こらない場面が起きたことやブレークチャンスが多かったことが起因していると考えられる。そのため、プレイ中につぶやく割合が多く、結果として総ツイート数も増えたと考えられる。

 調査3では、各試合でツイート数が多い上位2人のユーザーを対象にツイート内容を確認し、ユーザーがどれほど熱狂しているのか、どのような点に着目しているのかを調査した。44ツイート分を閲覧したが、図7,8のようなポイントカウントや状況を載せたツイートが多く、熱狂したツイートは準々決勝でつぶやかれたわずか1ツイートであった。土壇場からの巻き返しというあまり起こらない出来事があったにも関わらず、熱狂したツイートがわずか1ツイートしかなかったことを考慮すると、テニスの試合を視聴するユーザーはあまり熱狂的にならないと考えられる。

 野球では得点時にツイート数が多くなるため、試合の総得点や得点シーンが多いほど総ツイート数が多くなると考えられている。これは、得点を取る行為が頻繁に起こる出来事ではないからである。テニスの場合は得点を取る行為は必ず起こる出来事であり、ツイート数が伸びたのは準々決勝で起きた「土壇場からの巻き返し」という場面であった。ここから、テニスにおいてツイート数が伸びる要因として、土壇場からの巻き返しほどの普段あまり起こらない出来事が起きた時というのがポイントになると考えられる。

5.まとめ

 本研究では、Twitterでつぶやかれたツイートから、いつ、どのような場面が盛り上がり、どのタイミングでユーザーがつぶやくのかを分析した。対象の3試合について、試合終了時と土壇場からの巻き返しの場面が特に盛り上がるが、頻繁には起こりづらく、ユーザーは熱狂的になりにくいことがわかった。 本研究の結果は決勝、準決勝、準々決勝の3試合のみで言えることであり、今後の課題としてはデータ数を増やして、より多くのデータの収集に努めていきたい。大会によってツイート数に差が見られる可能性も考えられる。また、試合中につぶやかれたツイートの内容を全て見ることで熱狂的なユーザーを発見できるかもしれない。本研究に利用したSNSはTwitterであったがfacebookといった別のSNSでも同様の分析を行い、同様の盛り上がり方をするのかも検証するべきである。

参考文献

  1. [速報]2019年スポーツマーケティング基礎調査 ~ワールドカップ日本開催で高まるラグビー人気, https://www.murc.jp/wp-content/uploads/2019/10/news_release_191011.pdf
  2. (第27回)「人気スポーツ」調査(調査結果の概要), https://www.crs.or.jp/data/pdf/sports19.pdf
  3. Neuro-Insightの調査で浮き彫りになった、イベントへのエンゲージメントと広告記憶率に対するTwitterの影響力, https://marketing.twitter.com/apac/ja/insights/twitter-changes-the-live-tv-sports-viewing-experience
  4. 曵地 航 プロ野球ゲームでのTwitterのつぶやき分析 東京電機大学 ネットワークシステム研究室, http://www.net.c.dendai.ac.jp/~hikichi/
  5. 過去最高の観客数、オンライン視聴数を記録した2019年ATPツアーシーズン, https://www.thetennisdaily.jp/news/atp/2019/0039099.php
  6. Twitter, https://twitter.com
  7. Countries with most Twitter users 2019 | Statista, https://www.statista.com/statistics/242606/number-of-active-twitter-users-in-selected-countries/
  8. Twitter4j, http://twitter4j.org/ja/index.html
  9. テニスルール辞典|エムズテニスパーク, https://yms-t.co.jp/knowhow/game_result/end.php

付録A ツィート取得プログラム

 以下にツイートを取得するのに利用したTwitte4jのプログラムを載せる。


package com.katoy.testtwitter;
import twitter4j.Query;
import twitter4j.QueryResult;
import twitter4j.Status;
import twitter4j.Twitter;
import twitter4j.TwitterException;
import twitter4j.TwitterFactory;
public class Testtwitter {
        //exclude:retweetsでリツイートは除外できる
        static final String DEFAULT_WORD = "/*ここに検索キーワードを入力*/";
    static final int MAX_PAGE = /*表示ページ数を入力(最大10)*/; // 2;
    static String word = DEFAULT_WORD;
    static int page = MAX_PAGE;
    static String from_date = "2019-08-08_01:00:00_JST";//"ここに開始日を入力";
    static String to_date = "2019-08-08_08:00:00_JST";//"ここに終了日を入力";
    /**
     * コマンドメイン
     *
     * @param args コマンドラインパラメータ
     */
    public static void main(String[] args) {
        parse_args(args);
        try {
            new TwitterReader().reader(Testtwitter.word,
                    Testtwitter.from_date, Testtwitter.to_date,
                    Testtwitter.page);
        } catch (TwitterException ex) {
            // TODO Auto-generated catch block
            ex.printStackTrace();
        }
    }
    static void parse_args(String[] args) {
        if (args.length > 4) {
            throw new IllegalArgumentException();
        }
        if (args.length > 3) {
            Testtwitter.to_date = args[3];
        }
        if (args.length > 2) {
            Testtwitter.from_date = args[2];
        }
        if (args.length > 1) {
            Testtwitter.page = Integer.parseInt(args[1]);
        }
        if (args.length > 0) {
            Testtwitter.word = args[0];
        }
    }
}
class TwitterReader {
    /**
     *
     * @param word 検索ワード
     * @param from_date 期間の開始 YYYY-MM-DD
     * @param to_date 期間の収容 YYYY-MM-DD
     * @param page 検索するページ数
     * @return int 検索した tweet 数。
     * @throws TwitterException
     */
    int reader(final String word, final String from_date, final String 
to_date, final int page) throws TwitterException {
        // 初期化
        int count = 0;  // 取得した総件数
        final Twitter twitter = new TwitterFactory().getInstance();
        Query query = new Query();
        // 検索ワードをセット
        query.setQuery(word);
        // 1 度のリクエストで取得する Tweet の数(100が最大)
        query.setCount(100);
        query.resultType(Query.RECENT);
        if (from_date != null) {
          query.since(from_date);
        }
        if (to_date != null) {
          query.until(to_date);
        }
        for (int i = 0; i < page; i++) {
            QueryResult result = twitter.search(query);
            System.out.println("ヒット数 : " + result.getTweets().size());
            System.out.println("ページ数 : " + i);
            // 検索結果を見てみる
            for (Status tweet : result.getTweets()) {
                // 本文
                String str = tweet.getText();
                java.util.Date hiduke = tweet.getCreatedAt();
                count += 1;
                System.out.println("" + count + "\t" + hiduke + str);
                // ハッシュタグ と URL の削除
            }
            if (result.hasNext()) {
                query = result.nextQuery();
            } else {
                break;
            }
        }
        return count;
    }
}
// End of File
	

付録B ツィート例

以下に各試合の最多つぶやきユーザー2人の全ツイート内容を載せる

決勝戦での最多つぶやきユーザーAのツイート1

図9 決勝戦での最多つぶやきユーザーAのツイート1

決勝戦での最多つぶやきユーザーAのツイート2

図10 決勝戦での最多つぶやきユーザーAのツイート2

決勝戦での最多つぶやきユーザーAのツイート3

図11 決勝戦での最多つぶやきユーザーAのツイート3

決勝戦での最多つぶやきユーザーAのツイート4

図12 決勝戦での最多つぶやきユーザーAのツイート4

決勝戦での最多つぶやきユーザーAのツイート5

図13 決勝戦での最多つぶやきユーザーAのツイート5

決勝戦での最多つぶやきユーザーAのツイート6

図14 決勝戦での最多つぶやきユーザーAのツイート6

決勝戦での最多つぶやきユーザーBのツイート1

図15 決勝戦での最多つぶやきユーザーBのツイート1

決勝戦での最多つぶやきユーザーBのツイート2

図16 決勝戦での最多つぶやきユーザーBのツイート2

決勝戦での最多つぶやきユーザーBのツイート3

図17 決勝戦での最多つぶやきユーザーBのツイート3

決勝戦での最多つぶやきユーザーBのツイート4

図18 決勝戦での最多つぶやきユーザーBのツイート4

決勝戦での最多つぶやきユーザーBのツイート5

図19 決勝戦での最多つぶやきユーザーBのツイート5

準決勝戦での最多つぶやきユーザーCのツイート1

図20 準決勝戦での最多つぶやきユーザーCのツイート1

準決勝戦での最多つぶやきユーザーCのツイート2

図21 準決勝戦での最多つぶやきユーザーCのツイート2

準決勝戦での最多つぶやきユーザーCのツイート3

図22 準決勝戦での最多つぶやきユーザーCのツイート3

準決勝戦での最多つぶやきユーザーDのツイート1

図23 準決勝戦での最多つぶやきユーザーDのツイート1

準決勝戦での最多つぶやきユーザーDのツイート2

図24 準決勝戦での最多つぶやきユーザーDのツイート2

準決勝戦での最多つぶやきユーザーDのツイート3

図25 準決勝戦での最多つぶやきユーザーDのツイート3

準々決勝戦での最多つぶやきユーザーEのツイート1

図26 準々決勝戦での最多つぶやきユーザーEのツイート1

準々決勝戦での最多つぶやきユーザーEのツイート2

図27 準々決勝戦での最多つぶやきユーザーEのツイート2

準々決勝戦での最多つぶやきユーザーEのツイート3

図28 準々決勝戦での最多つぶやきユーザーEのツイート3

準々決勝戦での最多つぶやきユーザーEのツイート4

図29 準々決勝戦での最多つぶやきユーザーEのツイート4

準々決勝戦での最多つぶやきユーザーEのツイート5

図30 準々決勝戦での最多つぶやきユーザーEのツイート5

準々決勝戦での最多つぶやきユーザーEのツイート6

図31 準々決勝戦での最多つぶやきユーザーEのツイート6

準々決勝戦での最多つぶやきユーザーEのツイート7

図32 準々決勝戦での最多つぶやきユーザーEのツイート7

準々決勝戦での最多つぶやきユーザーEのツイート8

図33 準々決勝戦での最多つぶやきユーザーEのツイート8

準々決勝戦での最多つぶやきユーザーEのツイート9

図34 準々決勝戦での最多つぶやきユーザーEのツイート9

準々決勝戦での最多つぶやきユーザーEのツイート10

図35 準々決勝戦での最多つぶやきユーザーEのツイート10

準々決勝戦での最多つぶやきユーザーEのツイート11

図36 準々決勝戦での最多つぶやきユーザーEのツイート11

準々決勝戦での最多つぶやきユーザーEのツイート12

図37 準々決勝戦での最多つぶやきユーザーEのツイート12

準々決勝戦での最多つぶやきユーザーEのツイート13

図38 準々決勝戦での最多つぶやきユーザーEのツイート13

準々決勝戦での最多つぶやきユーザーEのツイート14

図39 準々決勝戦での最多つぶやきユーザーEのツイート14

準々決勝戦での最多つぶやきユーザーEのツイート15

図40 準々決勝戦での最多つぶやきユーザーEのツイート15

準々決勝戦での最多つぶやきユーザーFのツイート1

図41 準々決勝戦での最多つぶやきユーザーFのツイート1

準々決勝戦での最多つぶやきユーザーFのツイート2

図42 準々決勝戦での最多つぶやきユーザーFのツイート2

準々決勝戦での最多つぶやきユーザーFのツイート3

図43 準々決勝戦での最多つぶやきユーザーFのツイート3

準々決勝戦での最多つぶやきユーザーFのツイート4

図44 準々決勝戦での最多つぶやきユーザーFのツイート4

準々決勝戦での最多つぶやきユーザーFのツイート5

図45 準々決勝戦での最多つぶやきユーザーFのツイート5

準々決勝戦での最多つぶやきユーザーFのツイート6

図46 準々決勝戦での最多つぶやきユーザーFのツイート6

準々決勝戦での最多つぶやきユーザーFのツイート7

図47 準々決勝戦での最多つぶやきユーザーFのツイート7

準々決勝戦での最多つぶやきユーザーFのツイート8

図48 準々決勝戦での最多つぶやきユーザーFのツイート8

準々決勝戦での最多つぶやきユーザーFのツイート9

図49 準々決勝戦での最多つぶやきユーザーFのツイート9

準々決勝戦での最多つぶやきユーザーFのツイート10

図50 準々決勝戦での最多つぶやきユーザーFのツイート10

準々決勝戦での最多つぶやきユーザーFのツイート11

図51 準々決勝戦での最多つぶやきユーザーFのツイート11

準々決勝戦での最多つぶやきユーザーFのツイート12

図52 準々決勝戦での最多つぶやきユーザーFのツイート12