※最新版をこちらに作りました!対象ブログ数も多いので、是非。
こんにちは、らくからちゃです。
昨日一昨日と、研修で缶詰にされていました( ´Д`)=3 なんでも、
会社:マネージャーは会社の規定上、上級職じゃないとしてはいけない。
ぼく:僕は初級職だからお仕事できないめう・・・。
会社:でも、君は優秀で、小規模案件なので特別に例外ということにする!
ぼく:特別に例外ということにする。
会社:これで君も、お給料は据え置きのままでマネージャーだ!おめでとう!
ぼく:やっためう!責任も残業も増えるめう!
(※弊社には何故か、優秀な社員と小規模な案件が溢れている模様)
会社:一応研修は受けてね。土曜日だけど。
ということで行ってきましたー。
それはさてき、帰りの電車でマイホットエントリーを眺めていて、こんな記事を見つけました。
はてなブログで読者登録数が多いブログってどんな記事なのかなーって気になったのですが、そもそも読者登録者ランキングなるものが存在しない…
確かに。はてなブログって、『読者登録』という仕組みを持っているくせして、それぞれのブログの読者登録数って公表していないんですよね。読者登録数が増えても、あまり読まれている気がしないのですが、やっぱりどんなブログが読者登録数が多いのかって、ちょっと気になりますよね。
こちらの記事では、
ということで、人気のブログをひたすら探し回って、読者登録数ランキングをつくりました。
このランキングは私が探しだすことができたブログしかランクインしていません。もしランキングにもれがあったら教えてくれると有り難いです。
という方法で調べていかれたようですが、もうちょっとシステマティックに出来ないかなーと思い、調べてみました。
集計方法解説
ランキングを集計する方法ですが、大きく分けて
- 対象となるブログを選定する。
- 読者登録数をカウントする。
- 並び替える。
といった作業が必要になるかなあと思います。はてなブログのユーザー数がどの程度いるのか分かりませんが、その一覧全てを取得することは大変困難です。今回の目的は『読者登録数』が多いブログを抽出することなので、『そこそこ人気のある』はてなブログの一覧からターゲットを選定すればよいかなあと思いました。
そこで、参考にしたのがこちら。
どういった基準で選んでいるのかは全く分かりませんが、『人気のエントリー』を定期的にtweetしているそうです。まずはここつぶやかれたtweetをベースに対象を選定することにします。
ただ、全期間のtweetを取得しようとするとapiの制約上色々と面倒くさい事になります。そこで今回は、9月から1ヶ月分くらいに当該twitterで紹介されたブログから、ランキングを抽出してみました。なお、解析は2015年10月18日時点です。
御託はここまでとして、結果を発表してみたいと思います。
( ・`д・´) いっくぞ~。
ランキング結果発表
順位 | ブログ | 投稿者(敬称略) | 読者数 |
---|---|---|---|
1 | はてなブログ開発ブログ | hatenablog | 5421 |
2 | 週刊はてなブログ | hatenablog | 3779 |
3 | それは恋とか愛とかの類ではなくて | moarh | 3309 |
4 | 暇な女子大生が馬鹿なことをやってみるブログ | aku_soshiki | 2292 |
5 | Everything you've ever Dreamed | Delete_All | 2133 |
6 | 脱社畜ブログ | dennou_kurage | 1997 |
7 | ARuFaの日記 | Arufa | 1980 |
8 | いばや通信 | ibaya | 1822 |
9 | はなこのブログ。 | hana5521 | 1447 |
10 | ぐるりみち。 | ornith | 1405 |
11 | 今日、なに食べよう?〜有機野菜の畑から~ | homare-temujin | 1331 |
12 | Green★Pharmacy | hikaru233391 | 1278 |
13 | スズコ、考える。 | suminotiger | 1269 |
14 | さっきもUたやん | horahareta13 | 1250 |
15 | 僭越ながら【1テーマの本を30冊読んで勉強するブログ】 | sclo-a | 1247 |
16 | 外資系OLのぐだぐだ | toianna | 1208 |
17 | 鈴木です。 | suzukidesu23 | 1148 |
18 | 斗比主閲子の姑日記 | topisyu | 1144 |
19 | クレジットカードの読みもの | cardmics | 1137 |
20 | しっきーのブログ | skky17 | 1133 |
21 | 妖怪男ウォッチ | papuriko | 1125 |
22 | 太陽がまぶしかったから | bulldra | 1120 |
23 | コスパ最強!!一人暮らしの簡単節約料理レシピ | kakashibennett | 1096 |
24 | 世界の中心はここだ | atnnnas | 1060 |
25 | おうつしかえ | banban | 1006 |
26 | インターネットの備忘録 | hase0831 | 1003 |
27 | いつか電池がきれるまで | fujipon | 1002 |
28 | 読書で本から学ぶブログ【書評・感想】 | dokushohon | 982 |
29 | ゆとりずむ | lacucaracha | 953 |
30 | かくいう私も青二才でね | TM2501 | 937 |
31 | phaの日記 | pha | 930 |
32 | 田舎で底辺暮らし | pokonan | 910 |
33 | 自省log | juverk | 906 |
34 | ゆるふわいずむ | yuki3mori | 895 |
35 | 楽に生きる方法 | megumakou2014 | 892 |
36 | めざせ 野菜1日350g! ちまこ通信 | chimako-tsushin | 882 |
37 | ←ズイショ→ | zuiji_zuisho | 847 |
38 | 攻めは飛車角銀桂守りは金銀三枚 | lightgauge | 840 |
39 | むすメモ! | tukatukasa | 826 |
40 | クソログ | lets0720 | 810 |
41 | モテ貯金 | horitsukiko | 794 |
42 | ナナオクプリーズ | nanaoku | 787 |
43 | ハッピーエンドを前提として | ui0723 | 776 |
44 | 今日はヒトデ祭りだぞ! | hitode99 | 768 |
45 | あざなえるなわのごとし | paradisecircus69 | 764 |
46 | 散るろぐ | cild | 743 |
47 | じゃじゃ嫁日記 | rise_more | 733 |
48 | マネー報道 MoneyReport | MoneyReport | 733 |
49 | ネットの海の渚にて | dobonkai | 717 |
50 | 田舎暮らしおひとりさまの日々 | hozumi3081 | 716 |
51 | 自分の仕事は、自分でつくる | igooke | 714 |
52 | hitode909の日記 | hitode909 | 686 |
53 | 心がよろけそうなときに読むポンコツ日記 | ponkotukko | 682 |
54 | 手の中で膨らむ | akikomainichi | 665 |
55 | Hagex-day info | hagex | 659 |
56 | コミックエッセイ-モノクロ家計簿 | ohg0524 | 652 |
57 | オレシピ - 俺のレシピはお前のレシピ- | log134 | 642 |
58 | ビジョンミッション成長ブログ | kobabiz | 623 |
59 | orangestarの雑記 | orangestar | 609 |
60 | 人生かっぽ —佐藤大地ブログ | daichi6388 | 603 |
61 | paiza開発日誌 | paiza | 596 |
62 | mizchi's blog | mizchi | 593 |
63 | レールを外れてもまだ生きる - ベンチャーOLブログ | colopon | 592 |
64 | pal-9999のサッカーレポート | pal-9999 | 589 |
65 | トウフ系 | kaishaku01 | 584 |
66 | 歴ログ -世界史専門ブログ- | titioya | 570 |
67 | サラリーマン休日副業で月10万円以上目指すページ | linuxdiary | 565 |
68 | いつか朝日が昇るまで | gerge0725 | 563 |
69 | ひかる人財プロジェクト | hikarujinzai | 558 |
70 | ボンダイ | gudachan | 551 |
71 | うちの子流~発達障害と生きる | nanaio | 550 |
72 | 魔法使いのシンプルライフ | erisalife | 549 |
73 | 山猫日記 | LMIURA | 538 |
74 | カリントボンボン | neji-ko | 532 |
75 | 日日平安part2 | tomii23 | 527 |
76 | 脱貧困ブログ | kentaroupeace | 527 |
77 | メディアの輪郭 | kana-boon | 524 |
78 | give IT a try | JunichiIto | 521 |
79 | うさもふ | dougacc | 516 |
80 | 人生いつも三日ボーズ | ysk_wtnb | 486 |
81 | poco blog | glasstruct | 485 |
82 | 銀座で働くデータサイエンティストのブログ | TJO | 485 |
83 | 家計とお買いモノと。 | mocaca | 458 |
84 | こみねもすなるだいありー | ashiyakomine | 456 |
85 | 月曜9時のparty people | jetstarmine | 454 |
86 | 小娘のつれづれ | drifter_2181 | 451 |
87 | c71の一日 | c71 | 441 |
88 | $shibayu36->blog; | shiba_yu36 | 440 |
89 | A1理論はミニマリスト | A1riron | 439 |
90 | Sakak's Gadget Blog | keisuke9498 | 433 |
91 | ミニマリストと呼ばれたい | haru501227 | 425 |
92 | 心に火を、指先にペンを | defender_21 | 425 |
93 | ✘╹◡╹✘ | r7kamura | 424 |
94 | malzack blog | mlzk | 421 |
95 | はてなブックマーク開発ブログ | hatenabookmark | 415 |
96 | プロジェクトマネジメントの話とか | wiz7 | 414 |
97 | I AM A DOG | OKP | 404 |
98 | さよなら自分 | f-aso | 394 |
99 | 備後「あこう浪士」 釣り場の周辺 | akouroushix | 393 |
100 | niko life... | niko_97 | 383 |
せっかくだから、200位から300位ものせてみる。ただ、この辺になると、twitterのほうの拾い漏れもあると思うので、結構あてには出来ないかも。
101 | あしみの 日記 | asimino | 378 |
---|---|---|---|
102 | 限りなく透明に近いふつう | ninicosachico | 376 |
102 | 貧乏人は麦を食え。年収200万円時代を生きる方法。-bobcoffeeの麦食指南 | bobcoffee | 376 |
104 | 俺の遺言を聴いてほしい | hideyoshi1537 | 366 |
104 | wepli.2 | SikisimaHisayuki | 366 |
106 | いつもマイナーチェンジ! | mayoi_inu | 363 |
107 | きまやのきまま屋 | kimaya | 357 |
108 | K Diary | xKxAxKx | 352 |
109 | はてこはときどき外に出る | kutabirehateko | 351 |
109 | なんとかなるさ | pumpkin2686 | 351 |
109 | Yukibou's Hideout on Hatena | potatostudio | 351 |
112 | ゆううきブログ | y_uuki | 347 |
113 | 言いたいことやまやまです | yamama48 | 341 |
114 | 疲れていたら かわいくないぞ | qusuriya | 338 |
115 | Letter from Kyoto | kkzy9 | 335 |
116 | アラサーOLクソ日誌。 | nyankichitter | 333 |
117 | ぼっち充のススメ | tamako-makomako | 329 |
118 | 己【おれ】 | thyself2005 | 328 |
119 | ShoYamane Blog | sho_yamane | 325 |
120 | すけこむブログ | sukecom | 324 |
121 | きりんの自由研究 | giraffyk1 | 319 |
122 | 中川龍のヒマつぶしブログ | noabooon | 316 |
123 | 検索サポーター | s-supporter | 315 |
124 | 拝神 | tokunoriben | 311 |
125 | [ま]ぷるんにー!(พรุ่งนี้) | kun-maa | 299 |
126 | 未来は変えられるの? | dandy611 | 295 |
126 | パル | negineesan | 295 |
128 | ちかっぱ看護師の転職決意ブログ | bluebright | 289 |
128 | ずぼらーだからミニマリスト! | an_3_2 | 289 |
130 | いずれも。 | koh0605 | 288 |
131 | xevra's blog | xevra | 284 |
132 | エコナセイカツ | econaseikatsu | 281 |
133 | かんそうブログ | ikdhkr | 280 |
134 | 山下泰平の趣味の方法 | cocolog-nifty | 276 |
134 | 意味をあたえる | fktack | 276 |
136 | ほぼ日刊はるはら | haru_hara | 275 |
137 | クックパッド開発者ブログ | cookpadtech | 272 |
137 | s-usapon’s diary | s-usapon | 272 |
139 | 破壊屋ブログ | hakaiya | 267 |
140 | Tanyの殴り書き | tany1986 | 260 |
140 | ジャニヲタ見聞録 | a2z | 260 |
140 | 日々の音色とことば | shiba-710 | 260 |
143 | アオヤギさんたら読まずに食べた | ao8l22 | 259 |
144 | さらさら録 | negi_a | 258 |
145 | 冒険の書 | boukennosyo | 257 |
145 | 自意識をひっぱたきたい | erousu | 257 |
147 | from scratch | yosuke_furukawa | 254 |
147 | コリログ | tmura3 | 254 |
149 | はてなブログ ヘルプ 目次 - はてなブログ ヘルプ | hatenablog | 251 |
150 | SIRUHA | SIRUHA | 250 |
151 | こぼねみ | kobonemi | 245 |
151 | ねぼけまなこ | mizuki_53 | 245 |
153 | chirashi | chira_rhythm55 | 244 |
154 | 今日も得る物なしZ | kyoumoe | 243 |
155 | タコの卵 | tettyagi | 242 |
156 | 変デジはてな支所 | lonestartx | 240 |
157 | 青嵐 Blue Storm 大野智くん Fan Blog | fuhca | 235 |
158 | てらかっぱのノート | terakappa | 234 |
158 | 臨床心理士のうたたね日記 | gkoroko | 234 |
160 | やぎろぐ | jimpeipei | 233 |
161 | 燃えないごみが燃える日 | r1ckey | 231 |
162 | 山形浩生の「経済のトリセツ」 | wlj-Friday | 230 |
163 | 主人公.com | sugatareiji | 229 |
164 | あれこれやそれこれ | masaki709 | 227 |
165 | ワンダーランド | caro947 | 226 |
165 | 僕はジャニヲタの友達が少ない | kaorucokaoruco | 226 |
167 | ゆとりのイズム | mamuseru4 | 224 |
168 | テラシュールブログ | tsubaki_t1 | 222 |
168 | 機械 | baumkuchen | 222 |
168 | 腐ハウスブログ | fuhouse | 222 |
171 | 泡沫な事柄の記憶 | gouju | 221 |
171 | はてな村定点観測所 | cyberglass | 221 |
171 | 灰色ハイジの観察日記 | haiji505 | 221 |
174 | 千日のブログ | sennich | 220 |
175 | 接客業はつらいよ!(旧:ケイ・ソリューションズのお仕事公開日記) | keisolutions | 218 |
176 | 今日もてんてこ舞 | Mephistopheles | 217 |
177 | Sideswipe | kazoo04 | 216 |
177 | latest log | uupaa | 216 |
179 | せまいコックピットのなか | mah_1225 | 214 |
180 | ブログタイトル思いつかない | sakenominimal | 211 |
181 | D'ac | peticonbu | 210 |
181 | コロメガネの手帳 | coromegane | 210 |
183 | お、うどん。 | oudon07 | 207 |
184 | 門限の9時 | jump924kun | 206 |
185 | 基本読書 | huyukiitoichi | 205 |
185 | モノよさらば | koizumihikaru1234 | 205 |
187 | はぁはぁブログ | Mamipeko | 204 |
188 | ミステリーをちゃんと読もう | yutoma233 | 203 |
188 | むしブロ | horikawad | 203 |
188 | CameraStory カメラとディズニーブログ | maphoto | 203 |
188 | 文系プログラマによるTIPSブログ | treeapps | 203 |
192 | 本しゃぶり | honeshabri | 200 |
193 | karaage. [からあげ] | karaage | 199 |
193 | DAILY OKAPPA | okappasan | 199 |
195 | 英雄は歌わない | herodontsing | 197 |
195 | heartbreaking. | kuroihikari | 197 |
195 | 熊本愛華のひとりごと | aika_kumamoto | 197 |
198 | Mist "i" Room | Mistclast | 195 |
198 | 分裂勘違い君劇場の別館 | fromdusktildawn | 195 |
200 | 大阪でベンチャーやってます | ktadaki | 194 |
201 | やっぱ、シンプル。 | seanax | 193 |
202 | 未経験から!Webデザイナーを目指すBlog | love-musicflavor0928 | 192 |
202 | Mana Blog Next | mana-cat | 192 |
204 | 世界を食べたキミは無敵。 | kireinasekai | 191 |
204 | たかぽんアンテナ | takapontan | 191 |
206 | どうでもよしこさん | doudemoyoshiko | 190 |
207 | Jasmine Cafe | yasumi-08 | 188 |
208 | 脱成長ブログ | zentoo | 187 |
209 | 積読書店員のつくりかた | fiblio | 184 |
209 | しばやん雑記 | shiba-yan | 184 |
211 | この世の果てブログ | the-world-is-yours | 183 |
211 | ろじかりずむ | quntastic24 | 183 |
213 | Noblesse Oblige 2nd by iGCN | iGCN | 182 |
214 | 過激なレプリカ | kagekina-replica | 181 |
215 | 珈琲をゴクゴク呑むように | kounotori0305 | 180 |
216 | The moment | blue_moment | 178 |
216 | 技術を磨くだいぱんまん | donchan922 | 178 |
218 | だいちゃん.com | uwasanoaitsu | 177 |
218 | 持たない暮らし~ミニマム生活。 | watasinokurasi | 177 |
220 | ゲーマー日日新聞 | arcadia11 | 176 |
220 | 旦那が天然すぎて耐えきれず公開 | dannagatennen | 176 |
220 | さようなら、憂鬱な木曜日 | goodbyebluemonday23 | 176 |
220 | 自由でたのしい毎日 | kaishaku01 | 176 |
220 | Jailbreak | DankanTakeshi | 176 |
225 | nerimemo | nerimarina | 175 |
225 | トラねこの巻 | idenizi | 175 |
227 | 名もなきライターのブログ | toushitsufukei | 171 |
228 | カモメのリズム | seagullrhythm | 170 |
229 | がちゃまにあ日報 | gachamania | 169 |
230 | LIFE IS HAPPY!!! | HappyEnjoyLoveFunPositive | 168 |
230 | From The Inside | minesweeper96 | 168 |
230 | おすすめを猫箱に | bern-kaste | 168 |
233 | uzullaがブログ | uzulla | 167 |
234 | 人生楽しんだもん勝ち♫ | ssachiko | 166 |
235 | #つくりおき | shimobayashi | 165 |
235 | 非アクティビズム。 | Daisuke-Tsuchiya | 165 |
237 | アリカワブログ | menheraneet | 164 |
238 | 修羅の国のミニマリスト | shuramini | 161 |
239 | Nothing ventured,nothing gained. | takoratta | 159 |
240 | とあるぶ | SikisimaHisayuki | 158 |
240 | 社労士による時事ネタコラム | yoshidaoffice | 158 |
242 | - katharsis - | malika5 | 157 |
242 | なわとび1本で何でもできるのだ | shoichikasuo | 157 |
244 | 轟け!サブカル女子 | ok723 | 156 |
245 | 分かちあいたいブログ | 22006 | 154 |
246 | 私の戦闘力は53万マイクロです | ken530000 | 153 |
247 | 私のフリーノート | freenotes | 151 |
248 | 法廷日記 | aiben | 150 |
249 | 八発白中 | nitro_idiot | 145 |
250 | ゆきしめ成長記 | planterplantan | 144 |
250 | 新・小説投稿サイト準備会 | kadokawa-toko | 144 |
250 | レトロゲームとマンガとももクロと | retogenofu | 144 |
253 | peppermint | b-haruhi | 143 |
254 | 銀の人のメモ帳 | gin0606 | 142 |
254 | ネットタイガー | naox21 | 142 |
256 | きんどうりさいくる | kindou | 141 |
256 | シンプル生活 わたしの好きなくらし | mamisinpuruseikatu | 141 |
256 | RADIO PAPA | papadiary | 141 |
256 | 笑いの飛距離 | notei | 141 |
256 | 石壁に百合の花咲く | miyakichi | 141 |
261 | LIFEHACK STREET 小山龍介ブログ | ryu2net | 139 |
261 | amazonでなにが買えますか? | mamiamamiya | 139 |
263 | ぶち猫おかわり | buchineko_okawari | 135 |
263 | 午前3時の太陽 | tomta | 135 |
263 | 軽率は力なり | ddizumi | 135 |
263 | 2つ目のぺーじ(仮) | nandenandechan | 135 |
263 | ここちよく流れる | keianju | 135 |
263 | あなたの名前を呼んでいいかな | cocoquet | 135 |
269 | だいたいちょろい | choronao | 134 |
270 | 関内関外日記(内) | goldhead | 132 |
271 | ずんずんのずんずん行こう!改! | zunzun428blog | 131 |
271 | 読書系フリーターの日常 | quelle-on | 131 |
273 | でくのぼうちゃんのブログ | dekunobouchang | 130 |
273 | 制作と広告とお酒と私 | papath55 | 130 |
275 | 日々を楽しく過ごしたい! | aykyoto | 129 |
276 | 割安株投資研究所 | maropiko | 128 |
276 | エディットマンの編集旅路 | editman | 128 |
278 | 茶人は不完全主義者 | kamkamkamyu | 127 |
279 | ヒキコモリズム | luckyman0302 | 126 |
280 | 酢ろぐ! | ch3cooh393 | 125 |
280 | 17.5歳のセックスか戦争を知ったガキのモード | EAbase887 | 125 |
282 | ちなみに | Sixeight | 123 |
282 | StatsFragments | sinhrks | 123 |
282 | I'll not pretend to be someone who I'm not. | midori32 | 123 |
285 | はてなビジネスブログ | hatenabusiness | 122 |
285 | 再構築の暮らし方 | hornedman | 122 |
287 | stanaka's blog | stanaka | 121 |
287 | とりま風呂 | georgek5555 | 121 |
287 | EMOJOIE CUISINE えもじょわキュイジーヌ | emojoiecuisine | 121 |
287 | homme à femme | coqeut | 121 |
287 | ぱりぱり日記 | pdaypari | 121 |
292 | 真崎ですよ | ai-en-house | 120 |
292 | ただの妄想 | amateur-challenger | 120 |
292 | しゃちくとめがね | tm8r | 120 |
295 | 中川龍のタロットブログ | noabooon | 119 |
295 | 人生のひとコマ号 | authenticlife | 119 |
297 | 今在る幸せに気づくこと。 | ayukoz | 118 |
297 | チャイ | xacoux | 118 |
297 | #RyoAnnaBlog | RyoAnna | 118 |
300 | 自分改造ブログ | ncpapa | 117 |
結果についての分析
だいたい見ていると、900を超えたあたりから一気に間隔が詰まってきている気がしますね。あと、『はてな』といえば、ITエンジニアなイメージだったのですが、並べてみると読者登録だけでみると、主婦やOLの方も多い気がしますね。
また、ホットエントリーなどでは全く見かけないブログも多数あり、はてなの世界の中でも、はてなブックマークを普段利用する層とそうでない層とでどうも生息圏が分かれているのかなあなんて思う結果です。
実際、読者登録が増えたからといって、ほいほいホットエントリーに入るのか?といわれると、体感的にはちょっと違うかなと思っています。新着や人気までは入りやすいのですが、ホットエントリーに入るためには、ある程度の記事の品質は必要なのかなあというような気がしています。
解析用ソースコード
さて、今回の集計は、エクセル方眼紙と日々戦う28歳会社員、なんちゃって応用技術者が3時間ちょいくらいで書いたコードを元に出力された結果となります。
『動けばいいや』の崇高な精神のもと作ったものですので、とてもお見せ出来るようなものではないのですが、個人的な備忘録も兼ねてはっつけておきます。読者登録だけだと、古くからのユーザーが優位になりますので、登録されている読者がアクティブかどうか(直近3日以内にブクマor2週間以内に記事投稿など)も判断して集計したかったのですが、それはまた後日ということで。
package hatenablogsubscribercount;
import twitter4j.*;
import org.jsoup.*;
import java.util.*;
import java.net.*;
import java.io.*;
import java.sql.*;
public class HatenaBlogSubscriberCount {
public static void main(String[] args) {
Twitter twitter = new TwitterFactory().getInstance(); //認証なしで接続
try {
//DB宣言部
java.sql.Connection conn = null;
String dbUrl = "jdbc:derby://localhost:1527/";
String dbName = "HatenaBlogSubscriberCount";
String driver = "org.apache.derby.jdbc.ClientDriver";
String userName = "hbsc";
String password = "hbsc";
Class.forName(driver).newInstance();
conn = DriverManager.getConnection(dbUrl + dbName, userName, password);
conn.setAutoCommit(false);
PreparedStatement stmt = null;
String blogurl = "";
stmt = conn.prepareStatement("delete from BLOG_TWEETED");
stmt.executeUpdate();
//ひとまずTLを取得
Map<String, RateLimitStatus> ratelimitA = twitter.getRateLimitStatus("block", "statuses");
RateLimitStatus ratelimit = ratelimitA.get("/statuses/user_timeline");
System.out.println(ratelimit);
for (int i = 1; i < ratelimit.getRemaining()-1; i++) {
ResponseList statuses = twitter.getUserTimeline("hatenablog", new Paging(i, 200));
for (Status status : statuses) {
for (URLEntity urlentity : status.getURLEntities()) {
URL url = new URL(urlentity.getExpandedURL());
java.sql.Time time = new java.sql.Time(status.getCreatedAt().getTime());
java.sql.Date date = new java.sql.Date(status.getCreatedAt().getDate());
stmt = conn.prepareStatement("insert into BLOG_TWEETED(POSTURL,POSTHOST,TWEETTIME,TWEETDATE) values(?,?,?,?) ");
stmt.setString(1, url.toString());
stmt.setString(2, url.getHost());
stmt.setTime(3, time);
stmt.setDate(4, date);
stmt.executeUpdate();
}
System.out.println(status.getText());
}
}
//結果からSumallyの対象を集計
stmt = conn.prepareStatement("delete from BLOG_SUMALLY");
stmt.executeUpdate();
stmt = conn.prepareStatement("select POSTHOST from BLOG_TWEETED group by POSTHOST");
ResultSet rs = stmt.executeQuery();
rs.next();
//ひたすらデータを集計して突っ込む
while (rs.next()) {
blogurl = "https://" + rs.getString("POSTHOST");
org.jsoup.nodes.Document document;
try {
document = Jsoup.connect(blogurl).get();
String title = document.getElementsByTag("title").text();
document = Jsoup.connect(blogurl + "/about").get();
String subscriber = document.select("span.about-subscription-count").text().replaceAll(" 人", "");
String bloguser = document.select("html").attr("data-author");
/* for(org.jsoup.nodes.Element subscriber : document.select("div.info").select("a")){
System.out.println(subscriber.attr("href"));
}*/
System.out.println("title:" + title + " bloguser:" + bloguser + " subscriber:" + subscriber);
stmt = conn.prepareStatement("insert into BLOG_SUMALLY(BLOGURL,BLOGTITLE,BLOGUSER,SUBSCRIBER) values(?,?,?,?) ");
stmt.setString(1, rs.getString("POSTHOST"));
stmt.setString(2, title);
stmt.setString(3, bloguser);
stmt.setInt(4, parseInt(subscriber,0));
stmt.executeUpdate();
} catch (Exception e) {
}
}
conn.commit();
conn.close();
} catch (Exception e) {
System.err.println(e.getMessage());
e.printStackTrace();
}
}
public static int parseInt(String value, int defaultValue) {
try {
// intに変換して返す
return Integer.parseInt(value);
} catch (NumberFormatException e) {
// デフォルト値を返す
return defaultValue;
}
}
}
ではでは、今日はこの辺で