Created
December 17, 2012 02:55
-
-
Save kkotaro0111/4315483 to your computer and use it in GitHub Desktop.
読売新聞サイトの選挙速報の比例代表ページから、各政党ごとに獲得票数を合計し、その獲得率を計算するスクリプト http://www.yomiuri.co.jp/election/shugiin/2012/ にアクセスし、コンソールなどに入力して使う。あくまで比例区のみの話なので、小選挙区も含めた最終的な結果とは比較してはいけない。
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
//12/17 11:30頃に確認した結果 | |
//自由民主党 16,624,457票 27.62% 57議席 31.66% | |
//日本維新の会 12,262,228票 20.37% 40議席 22.22% | |
//民主党 9,628,653票 15.99% 30議席 16.66% | |
//公明党 7,116,474票 11.82% 22議席 12.22% | |
//みんなの党 5,245,586票 8.71% 14議席 7.77% | |
//日本共産党 3,689,159票 6.13% 8議席 4.44% | |
//日本未来の党 3,423,915票 5.68% 7議席 3.88% | |
//社会民主党 1,420,790票 2.36% 1議席 1.11% | |
//新党大地 346,848票 0.57% 1議席 1.11% | |
//幸福実現党 216,150票 0.35% 0議席 0% | |
//新党改革 134,781票 0.22% 0議席 0% | |
//国民新党 70,847票 0.11% 0議席 0% | |
//該当ページで使われているjQueryのバージョンが古すぎるので、新しいのを読み込んで上書きする。 | |
jQuery.getScript("http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js",function(){ | |
var pages = [ | |
"http://www.yomiuri.co.jp/election/shugiin/2012/kaihyou/yc81.htm", | |
"http://www.yomiuri.co.jp/election/shugiin/2012/kaihyou/yc82.htm", | |
"http://www.yomiuri.co.jp/election/shugiin/2012/kaihyou/yc83.htm", | |
"http://www.yomiuri.co.jp/election/shugiin/2012/kaihyou/yc84.htm", | |
"http://www.yomiuri.co.jp/election/shugiin/2012/kaihyou/yc85.htm", | |
"http://www.yomiuri.co.jp/election/shugiin/2012/kaihyou/yc86.htm", | |
"http://www.yomiuri.co.jp/election/shugiin/2012/kaihyou/yc87.htm", | |
"http://www.yomiuri.co.jp/election/shugiin/2012/kaihyou/yc88.htm", | |
"http://www.yomiuri.co.jp/election/shugiin/2012/kaihyou/yc89.htm", | |
"http://www.yomiuri.co.jp/election/shugiin/2012/kaihyou/yc90.htm", | |
"http://www.yomiuri.co.jp/election/shugiin/2012/kaihyou/yc91.htm" | |
]; | |
var sum = 0; | |
var ary = {}; | |
var l = pages.length; | |
var idx = 0; | |
function analy(){ | |
if(idx < l){ | |
$.ajax({ | |
url:pages[idx], | |
success: function(data, status, xhr){ | |
$(data).find(".cndt").find("caption").each(function(){ | |
var t = $(this); | |
var name = t.find("a").text(); | |
if(!(name in ary)){ | |
console.log("new ary " + name); | |
ary[name] = 0; | |
} | |
var votes = t.find("strong").eq(2).text().replace(/,/g, ""); | |
ary[name] += votes << 0; | |
console.log(name, votes, ary[name]); | |
sum += (votes << 0); | |
}); | |
console.log("analyzed " + pages[idx]); | |
idx++; | |
analy(); | |
} | |
}); | |
}else{ | |
console.log(ary); | |
for(var key in ary){ | |
console.log(key, ary[key], ((ary[key]/sum *10000)<<0) / 100 ); | |
} | |
} | |
} | |
analy(); | |
}); |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment