ツイキャス視聴者数で判明!金バエを見てる人は少ない phpソースUpdate2 | 乖離のぶろぐ(*´∀`)吸い込んで応援
(゚ω゚) コピペして拡散してください。

10月2日、飲酒と徹夜して一睡もせず自転車運転して、眠くて救急車に乗った金バエは、過労運転等なんです。東京では、坐骨神経痛をリスナーから知り得ます。坐骨神経痛は、眠れずに転がりまわって夜が明けるような病気です。仮病 嘘800 金バエ kimbae1234

(゚ω゚)ユーザーがいっぱい居ると、リストに集めてみたくなるでしょ。
(゚ω゚)こういう風にすれば、数100人が数分間で、リスト追加(上書き追加)出来ます。
addUser2ListKimbae1234.shの内容
#!/bin/bash
# https://dev.twitter.com/rest/reference/post/lists/members/create_all
# adding up to 100 members to a list at a time
#set -x
call_php(){
echo "############################################################"
{ echo "<?php"
echo "define('LISTS_MEMBERS','$SCRNAME');"
echo "?>"
} > kimbae1234_list.php
php ./addUser2ListKimbae1234.php
}
main(){
cnt=0;
SCRNAME="start."
for sname in `cat SPAMNAME.txt`
do
case $sname in
@*)
ww=${sname##@}; # 先頭の@を除去
if [ $cnt -lt 20 ]
then
if [ $SCRNAME = "start." ]
then
SCRNAME=$ww
else
SCRNAME="$SCRNAME,$ww"
fi
cnt=`expr $cnt + 1`
else
call_php;
cnt=1
SCRNAME=$ww
sleep 10
fi
;;
*) echo "........Skip $sname";continue
;;
esac
done
if [ $SCRNAME != "start." ]
then
call_php;
fi
}

main;

(゚ω゚) SPAMNAME.txtが「@スクリーンネーム」の入ったファイルです。
(゚ω゚) こんな風にTweetDeckの内容をコピペして、
(゚ω゚) SPAMNAME.txtへ貼り付けてもaddUser2ListKimbae1234.shは動作します。
(゚ω゚) ただし、ファイル内の改行は、LFのみ。


addUser2ListKimbae1234.phpの内容
<?php

require_once(dirname(__FILE__)."/twitteroauth/twitteroauth.php");
require_once(dirname(__FILE__)."/kimbae1234_list.php");

// developer info
$consumerKey = 'ここにコンシューマーキーをコピペ';
$consumerSecret = 'ここにコンシューマーシークレットをコピペ';
$accessToken = 'ここにアクセストークンをコピペ';
$accessTokenSecret = 'ここにアクセストークンシークレットをコピペ';

$oAuth = new TwitterOAuth($consumerKey, $consumerSecret, $accessToken, $accessTokenSecret);

/****************
oAuth認証を利用し、リスト情報を確認。
$myName = 'kai_ri_no';
$response = $oAuth->get('lists/ownerships', array('screen_name' => $MyName));
var_dump($response);
リストIDとslugが分かったらコメントアウト
exit(0);
******************/

// oAuth認証を利用し、ユーザーをリストに追加。
$LstId = '172938406'; //リストID。値は整数
$slugLstName = '金バエの過労運転及び、飲酒運転を通報する会'; //リスト名(URL文字列)
/* $spamUserID = 整数; を与えなくてもリストに追加できた 2014.08.26 */
$scrName = LISTS_MEMBERS ; //リストに追加するユーザーID (@から後ろの部分)
print_r("php:scrName=".$scrName."\n");
//exit(0);
// 100人単位のリスト追加なのだが、20人位に減らさないとキャパシティを超える。
$response = $oAuth->post('lists/members/create_all', array(
'list_id' => $LstId ,'slug' => $slugLstName,
'screen_name' => $scrName));
var_dump($response);

/* メンバー追加は一人づつは60秒に一人づつ。
$response = $oAuth->post('lists/members/create', array(
'list_id' => $LstId ,'slug' => $slugLstName,
'screen_name' => $scrName));
*/
?>


--------------------下記は2014-10-26 06:00:00の内容----------------------

(゚ω゚) 以上です。
(゚ω゚) 下記はツイキャスのコメントの取り方の話です。

(゚ω゚) HTMLを追記し、localhostで見れるようにしてみた。
(゚ω゚) localhostはApache2の仮想ホストです。
(゚ω゚) 関連情報は、 
http://ameblo.jp/pochifx/entry-11803948927.html
> a2ensite コマンド。
http://manpages.ubuntu.com/manpages/jaunty/man8/a2ensite.8.html
a2ensite, a2dissite - enable or disable an apache2 site / virtual host
https://twitter.com/kai_ri_no/status/525184612427784192/photo/1

(゚ω゚) m=パラメタは、Live履歴毎に異なる数字。
<html>
<head>
<meta charset="UTF-8">
<style type="text/css">
<!--
div{border: 1px solid #000000;}
tr{border: 1px solid #000000;}
td{border: 1px solid #000000;}
.comment{font-size: 80%;}
.user {font-size: 120%; color: red; }
.name {font-size: 100%;}
.date {font-size: 60%;}
.nguser {background: red;}//NGユーザーなのか、自分でコメントを消したのかJSONでは区別不可能。
-->
</style>
</head>
<body>
このhtmlは <a target=_blank href='http://ameblo.jp/pochifx/entry-11941144500.html'>http://ameblo.jp/pochifx/entry-11941144500.html</a> に置いてあるphpを元に作られました。<br>
<?php
// ツイキャスのコメントを取得。n=が取得するコメント数なので「多めの値」を渡す。
$resJSON = file_get_contents(
'http://twitcasting.tv/shinya_yuunari/userajax.php?c=list&m=111613407&k=0&f=0&n=100000');
$resMixed1 = json_decode($resJSON);
$resMixed = array_reverse($resMixed1);
$length = count($resMixed);
echo "■取得したコメント数=". $length."<br>";
// echo "resMixed[ 0 ]=". $resMixed[0]->html . "\n";
// echo "resMixed[最終]=". $resMixed[$length-1]->html . "\n";
// $resMixed[ $i]->uid はツイッターのdata-screen-name
$a_uid = array();
$ng_user="";
$html_table="<table>\n";
for ($i = 0; $i < $length; $i++) {
$a_uid[$i] = $resMixed[$i]->uid;
if( strlen($resMixed[$i]->html) == 0){
$html_tr= "<tr class='nguser'><td class='date'>". substr($resMixed[$i]->date,0,25) ."</td>".
"<td>".$resMixed[$i]->uid ."</td><td>コメントのHTML無し</td><td></td><tr>\n";
}else{
$html_tr= "<tr><td class='date'>". substr($resMixed[$i]->date,0,25) ."</td>".
$resMixed[$i]->html ."</tr>\n";
}
$html_table .= $html_tr;
}
$html_table .= "</table>\n";

// コメントの多い順。キーはユーザー名。値はコメント数
$commentCountRanking = array();
$commentCountRanking = array_count_values($a_uid);
$bRet = arsort($commentCountRanking);
$CntTwit = 0; // ツイッターの人数
$CntFace = 0; // フェイスブックの人数
$CntMixi = 0; // ミクシーの人数
reset($commentCountRanking);
while (current($commentCountRanking)) {
$wkey=key($commentCountRanking);
if ( substr($wkey, 0, 2) == 'f:' ){
$CntFace ++; // フェイスブック 'f:'始まり
}elseif ( substr($wkey, 0, 5) == 'mixi:' ){
$CntMixi ++; // ミクシー 'mixi:'始まり
}else{
$CntTwit ++;
}
next($commentCountRanking);
}
echo "■コメントしたユーザー数 twitter=".$CntTwit.",mixi=".$CntMixi.",Facebook=".$CntFace."<BR>\n";
echo $html_table;
echo "<pre>\n";
echo "■コメント回数の順位。twitterのみ\n";
reset($commentCountRanking);
while (current($commentCountRanking)) {
$wkey=key($commentCountRanking);
if ( substr($wkey, 0, 2) == 'f:' or substr($wkey, 0, 5) == 'mixi:'){
echo $commentCountRanking[$wkey]."回: " . $wkey . "\n";
}else{
echo $commentCountRanking[$wkey]."回: @" . $wkey . "\n";//twitter data-screen-name
}
next($commentCountRanking);
}
echo "</pre>\n"
?>
</body>
</html>


---------------下記は2014-10-22 12:53:00の内容-------------

(゚ω゚) PHPを使ったツイキャスのコメントの取得方法が分かった。
https://twitter.com/kai_ri_no/status/524642330356101120/photo/1
https://twitter.com/kai_ri_no/status/524765111307620352/photo/1

(゚ω゚)赤い部分を、ライブ履歴ごとに書き換える事。
(゚ω゚) URLの一部「kimbae1234」という部分は他の配信者に置き換えても集計できるから、
(゚ω゚) m= パラメタでサーバーは区別してる。
(゚ω゚)ライブ中でも、集計できるんぢゃないかな・・。
<?php
// ツイキャスのコメントを取得。n=が取得するコメント数なので「多めの値」を渡す。
$resJSON = file_get_contents(
'http://twitcasting.tv/kimbae1234/userajax.php?c=list&m=110564317&k=0&f=0&n=10000');
$resMixed = json_decode($resJSON);
$length = count($resMixed);
//echo "コメント数=". $length."\n";
//echo "resMixed[ 0 ]=". $resMixed[0]->html . "\n";
//echo "resMixed[最終]=". $resMixed[$length-1]->html . "\n";
// $resMixed[ $i]->uid はツイッターのdata-screen-name
$a_uid = array();
for ($i = 0; $i < $length; $i++) {
$a_uid[$i] = $resMixed[$i]->uid;
}
// コメントの多い順。キーはユーザー名。値はコメント数
$commentCountRanking = array_count_values($a_uid);
$bRet = arsort($commentCountRanking);
print_r( $commentCountRanking );

$CntTwit = 0; // ツイッターの人数
$CntFace = 0; // フェイスブックの人数
reset($commentCountRanking);
while (current($commentCountRanking)) {
// フェイスブック 'f:'始まり
$wkey=key($commentCountRanking);
if ( substr($wkey, 0, 2) == 'f:' ){
$CntFace ++;
}else{
$CntTwit ++; // mixiはツイッターに含める(未完成)
}
next($commentCountRanking);
}
echo "コメントした人はツイッター=" . $CntTwit .
"、\nフェイスブック=" . $CntFace . "\n";
?>


------------------下記は2014-10-20 09:26:00の内容------------------

(゚ω゚)例えば、6タブを同じライブを表示させておけば、
(゚ω゚)視聴者数が6人増えることが分かっている。


(゚ω゚)それから、
(゚ω゚)どうやら勲章アイコンのついてないユーザー数だけを集計してたらしい。
(゚ω゚)全てのユーザーをカウントするには下記のエレメントに着目する。
<span class="user"><a href="

fgrep "<span class=\"user\">" klist1.txt | cut -d"\"" -f4 | sort -u

(゚ω゚)を実行するとユーザー数が分かる。コメントをしたユーザー数をカウントしてみた。

http://twitcasting.tv/kimbae1234/movie/110009719
時間: 3:53:13 | 総視聴者数: 30,674人 | 最大同時視聴者数: 1,146 | 端末: iPhone6,1 | 19/10/2014 09:53:45
(゚ω゚)コメントしたユーザー数は、ツイッター=535、フェイスブック=42

(゚ω゚)他の配信者もカウントして欲しいと依頼があったので集計してみた。
http://twitcasting.tv/shinya_yuunari/movie/110116619
shinya_yuunariさんのライブ
時間: 2:00:00 | 総視聴者数: 44,512人 | 最大同時視聴者数: 2,324 | 端末: iPad4,2 | 2014/10/19 18:26:03
(゚ω゚)コメントしたユーザー数は、ツイッター=1012、フェイスブック=48

(゚ω゚)金バエと、しんやっちょの配信は、
(゚ω゚)熱心に見てるユーザー数は2倍の確立の差があるといえる。
(゚ω゚)半分の時間でユーザー数が2倍という事は、実際はユーザー数は4倍の差があるとも思える。


------------------下記は2014-10-19 16:42:00の内容------------------
タイトル
ツイキャス視聴者数で判明! 金バエ信者は2~3割。残りはNGユーザー設定されている

https://twitter.com/kai_ri_no/status/523730134956654592

乖離 @kai_ri_no
本日の金バエのツイキャスでコメントされた人数(ツイッターのユーザー数。フェイスブックは少数なのでカウントしない)を集計中
http://twitcasting.tv/kimbae1234/movie/110009719
時間: 3:53:13 | 総視聴者数: 29,465人 | 最大同時視聴者数: 1,146 |

乖離
@kai_ri_no 集計によると、
本日の金バエのツイキャスでコメントしたツイッターのユーザー数=276、フェイスブック=28でした。
http://twitcasting.tv/kimbae1234/movie/110009719
時間: 3:53:13 | 総視聴者数: 29,465人 | 最大同時視聴者数: 1,146 |
Recorded Live 房総半島一周チャリの旅 - 金バエライブ #110009719
モイ!
3:59pm · 19 Oct 2014 · TweetDeck

乖離 @kai_ri_no
@kai_ri_no 補足すると、時間: 3:53:13で
ツイッターのユーザー数=276、フェイスブック=28
という結果。 金バエ格言

乖離 @kai_ri_no
@kai_ri_no 集計に一時間かかってる。ブラウザで全部表示させてから、コメント部分のソース(HTML)を別のテキストエディタへコピペするまでに45分くらいかかってる。(動画の時間が)4時間になると集計作業には1時間はかかる


(゚ω゚)集計に使ったPCの性能
CPU : Phenom II X6 1090T Black Edition (3.2GHz,L2 512KB×6,L3 6MB,TDP 125W)
M/B : GIGABYTE GA-890FXA-UD5 (rev. 2.0) AMD 890FX + SB850 Chipset
MEM : AX3U1600GC4G9-2G DDR3 1600G(9) 4GX16 (を4枚で16GB。)
HDD : WD5000AAKX 2台をストライプ