今年のJRA賞の各記者の投票内容を見るGreasemonkey
いまさらだけど。記者名が青くなったら見れる。
追記: ちょっと直した。
data:text/plain;base64,Ly8gPT1Vc2VyU2NyaXB0PT0NCi8vIEBuYW1lICAgICAgIHNob3cgSlJBIGF3YXJkIHZvdGUgb2Ygd3JpdGVycw0KLy8gQG5hbWVzcGFjZSAgaHR0cDovL2QuaGF0ZW5hLm5lLmpwL2FyaWt1aS8NCi8vIEBpbmNsdWRlICAgIGh0dHA6Ly93d3cuanJhLmdvLmpwL25ld3MvMjAwNzAxLzAxMDkwMWEtKi5odG1sDQovLyBAaW5jbHVkZSAgICBodHRwOi8vanJhLmpwL25ld3MvMjAwNzAxLzAxMDkwMWEtKi5odG1sDQovLyBAdmVyc2lvbiAgICAxLjANCi8vID09L1VzZXJTY3JpcHQ9PQ0KDQpjb25zdCBwYWdlVVJMID0gImh0dHA6Ly93d3cuanJhLmdvLmpwL25ld3MvMjAwNzAxLzAxMDkwMWEtJW51bSUuaHRtbCI7DQp2YXIgdGl0bGVzID0gWw0KCSJcdTVFNzRcdTVFQTZcdTRFRTNcdTg4NjhcdTk5QUMiLA0KCSJcdTY3MDBcdTUxMkFcdTc5QzBcdUZGMTJcdTZCNzNcdTcyNjFcdTk5QUMiLA0KCSJcdTY3MDBcdTUxMkFcdTc5QzBcdUZGMTJcdTZCNzNcdTcyNURcdTk5QUMiLA0KCSJcdTY3MDBcdTUxMkFcdTc5QzBcdUZGMTNcdTZCNzNcdTcyNjFcdTk5QUMiLA0KCSJcdTY3MDBcdTUxMkFcdTc5QzBcdUZGMTNcdTZCNzNcdTcyNURcdTk5QUMiLA0KCSJcdTY3MDBcdTUxMkFcdTc5QzBcdUZGMTRcdTZCNzNcdTRFRTVcdTRFMEFcdTcyNjFcdTk5QUMiLA0KCSJcdTY3MDBcdTUxMkFcdTc5QzBcdUZGMTRcdTZCNzNcdTRFRTVcdTRFMEFcdTcyNURcdTk5QUMiLA0KCSJcdTY3MDBcdTUxMkFcdTc5QzBcdTcyMzZcdTUxODVcdTU2RkRcdTc1MjNcdTk5QUMiLA0KCSJcdTY3MDBcdTUxMkFcdTc5QzBcdTc3RURcdThERERcdTk2RTJcdTk5QUMiLA0KCSJcdTY3MDBcdTUxMkFcdTc5QzBcdTMwQzBcdTMwRkNcdTMwQzhcdTMwREJcdTMwRkNcdTMwQjkiLA0KCSJcdTY3MDBcdTUxMkFcdTc5QzBcdTk2OUNcdTVCQjNcdTk5QUMiDQpdOw0KDQp2YXIgcGFnZXNEYXRhID0gW107DQp2YXIgd3JpdGVycyA9IGdldFdyaXRlckVsZW1lbnRzKCk7DQoNCnZhciBkaXNwID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7DQp2YXIgZGlzcE5hbWUgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTsNCnZhciBkaXNwTGlzdCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpOw0KdmFyIGRpc3BCdXR0b24gPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJidXR0b24iKTsNCg0KZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChkaXNwKTsNCmRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoZGlzcEJ1dHRvbik7DQpkaXNwLmFwcGVuZENoaWxkKGRpc3BOYW1lKTsNCmRpc3AuYXBwZW5kQ2hpbGQoZGlzcExpc3QpOw0KDQp3aXRoKGRpc3Auc3R5bGUpew0KCXBvc2l0aW9uID0gImZpeGVkIjsNCglyaWdodCA9ICIwcHgiOw0KCXRvcCA9ICIwcHgiOw0KCWJhY2tncm91bmRDb2xvciA9ICIjZmZmIjsNCglmb250U2l6ZSA9ICIwLjllbSI7DQoJcGFkZGluZyA9ICIxZW0gMHB4IjsNCglNb3pPcGFjaXR5ID0gIjAuOCI7DQp9DQoNCmRpc3BCdXR0b24uaW5uZXJIVE1MID0gIm9wZW4vY2xvc2UiOw0Kd2l0aChkaXNwQnV0dG9uLnN0eWxlKXsNCglwb3NpdGlvbiA9ICJmaXhlZCI7DQoJcmlnaHQgPSAiMHB4IjsNCgl0b3AgPSAiMHB4IjsNCgl6SW5kZXggPSAiMTAiOw0KfQ0KZGlzcEJ1dHRvbi5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsIGZ1bmN0aW9uKCl7DQoJY2hhbmdlRGlzcChkaXNwKTsNCn0sIGZhbHNlKTsNCg0KdmFyIGkgPSAwOw0KX29ubG9hZChudWxsKTsNCg0KLyoqKioqKioqKiovDQpmdW5jdGlvbiBfb25sb2FkKHJlcyl7DQoJaWYocmVzICE9IG51bGwpDQoJCXBhZ2VzRGF0YS5wdXNoKHJlcy5yZXNwb25zZVRleHQpOw0KCWkrKzsNCglpZihyZXF1ZXN0VVJMKGkpID09IGxvY2F0aW9uLmhyZWYpew0KCQlwYWdlc0RhdGEucHVzaCgiIik7DQoJCWkrKzsNCgl9DQoJaWYoaSA8IDEyKXsNCgkJR01feG1saHR0cFJlcXVlc3Qoe3VybDogcmVxdWVzdFVSTChpKSwgbWV0aG9kOiAiR0VUIiwgb25sb2FkOiBfb25sb2FkfSk7DQoJfQ0KCWVsc2UNCgkJX29uZmluaXNoKCk7DQp9DQoNCmZ1bmN0aW9uIF9vbmZpbmlzaCgpew0KCWZvcih2YXIgaSA9IDE7IGkgPCB3cml0ZXJzLmxlbmd0aDsgaSsrKXsNCgkJd2l0aCh3cml0ZXJzW2ldLmNoaWxkTm9kZXNbMV0uc3R5bGUpew0KCQkJY29sb3IgPSAiIzAwZiI7DQoJCQljdXJzb3IgPSAicG9pbnRlciI7DQoJCX0NCgkJd3JpdGVyc1tpXS5jaGlsZE5vZGVzWzFdLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIiwgZnVuY3Rpb24oKXsNCgkJCXZhciB2b3RlcyA9IGdldFZvdGVzKHRoaXMuaW5uZXJIVE1MKTsNCgkJCXZhciBsaXN0U3RyID0gW107DQoJCQlmb3IodmFyIGkgPSAwOyBpIDwgdGl0bGVzLmxlbmd0aDsgaSsrKXsNCgkJCQlpZih2b3Rlc1tpXSA9PSAiIikNCgkJCQkJdm90ZXNbaV0gPSB0aGlzLnBhcmVudE5vZGUuY2hpbGROb2Rlc1s1XS5pbm5lckhUTUw7DQoJCQkJbGlzdFN0ci5wdXNoKFt0aXRsZXNbaV0sICI6ICIsICI8YSBocmVmPVwiIiwgcmVxdWVzdFVSTChpKzEpLCAiXCI+Iiwgdm90ZXNbaV0sICI8L2E+Il0uam9pbigiIikpOw0KCQkJfQ0KCQkJZGlzcE5hbWUuaW5uZXJIVE1MID0gdGhpcy5pbm5lckhUTUw7DQoJCQlkaXNwTGlzdC5pbm5lckhUTUwgPSBsaXN0U3RyLmpvaW4oIjxicj5cbiIpOw0KCQl9LCBmYWxzZSk7DQoJfQ0KfQ0KDQpmdW5jdGlvbiBnZXRWb3Rlcyh3cml0ZXJOYW1lKXsNCgl2YXIgdm90ZXMgPSBbXTsNCglmb3IodmFyIGkgPSAwOyBpIDwgdGl0bGVzLmxlbmd0aDsgaSsrKXsNCgkJaWYocmVxdWVzdFVSTChpKSA9PSBsb2NhdGlvbi5ocmVmKXsNCgkJCXZvdGVzLnB1c2goIiIpOw0KCQkJY29udGludWU7DQoJCX0NCgkJdHJ5ew0KCQkJdmFyIGZpcnN0ICA9IHBhZ2VzRGF0YVtpXS5pbmRleE9mKHdyaXRlck5hbWUpOw0KCQkJdmFyIHNlY29uZCA9IHBhZ2VzRGF0YVtpXS5pbmRleE9mKCJcciIsIGZpcnN0KzEpOw0KCQkJdmFyIHRoaXJkICA9IHBhZ2VzRGF0YVtpXS5pbmRleE9mKCJcciIsIHNlY29uZCsxKTsNCgkJCXZhciBmb3VydGggPSBwYWdlc0RhdGFbaV0uaW5kZXhPZigiXHIiLCB0aGlyZCsxKTsNCgkJCXZhciB2b3RlVmFsID0gcGFnZXNEYXRhW2ldLnN1YnN0cmluZyh0aGlyZCs0LCBmb3VydGgtNSkucmVwbGFjZSgvW1x3XHM+PF0vZywgIiIpOw0KCQkJaWYodm90ZVZhbCA9PSAiIikNCgkJCQl2b3RlVmFsID0gIlx1OTc1RVx1NTE2Q1x1OTU4QiI7DQoJCQl2b3Rlcy5wdXNoKHZvdGVWYWwpOw0KCQl9DQoJCWNhdGNoKGUpew0KCQkJdm90ZXMucHVzaCgiIik7DQoJCX0NCgl9DQoJcmV0dXJuIHZvdGVzOw0KfQ0KDQpmdW5jdGlvbiBnZXRXcml0ZXJFbGVtZW50cygpew0KCXZhciB3cml0ZXJFbGVtZW50cyA9IFtdOw0KCXZhciBlbGVtZW50cyA9IGRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCJ0ciIpOw0KCWZvcih2YXIgaSA9IDA7IGkgPCBlbGVtZW50cy5sZW5ndGg7IGkrKykNCgkJaWYoIGVsZW1lbnRzW2ldLmdldEF0dHJpYnV0ZSgiQ0xBU1MiKSA9PSAiZ3JheTEyIiAmJiBlbGVtZW50c1tpXS5jaGlsZE5vZGVzLmxlbmd0aCA+IDMgKQ0KCQkJd3JpdGVyRWxlbWVudHMucHVzaChlbGVtZW50c1tpXSk7DQoJcmV0dXJuIHdyaXRlckVsZW1lbnRzOw0KfQ0KDQpmdW5jdGlvbiByZXF1ZXN0VVJMKG4pew0KCXJldHVybiBwYWdlVVJMLnJlcGxhY2UoLyVudW0lLywgbnVtKG4pKTsNCn0NCg0KZnVuY3Rpb24gbnVtKG4pew0KCWlmKG4gPCAxMCkgcmV0dXJuICIwIiArIG47DQoJZWxzZSAgICAgICByZXR1cm4gbjsNCn0NCg0KZnVuY3Rpb24gY2hhbmdlRGlzcChlbGVtZW50KXsNCgllbGVtZW50LnN0eWxlLmRpc3BsYXkgPSAoZWxlbWVudC5zdHlsZS5kaXNwbGF5ID09ICJub25lIik/ICJibG9jayI6ICJub25lIjsNCn0=
// ==UserScript== // @name show JRA award vote of writers // @namespace http://d.hatena.ne.jp/arikui/ // @include http://www.jra.go.jp/news/200701/010901a-*.html // @include http://jra.jp/news/200701/010901a-*.html // @version 1.0 // ==/UserScript== const pageURL = "http://www.jra.go.jp/news/200701/010901a-%num%.html"; var titles = [ "\u5E74\u5EA6\u4EE3\u8868\u99AC", "\u6700\u512A\u79C0\uFF12\u6B73\u7261\u99AC", "\u6700\u512A\u79C0\uFF12\u6B73\u725D\u99AC", "\u6700\u512A\u79C0\uFF13\u6B73\u7261\u99AC", "\u6700\u512A\u79C0\uFF13\u6B73\u725D\u99AC", "\u6700\u512A\u79C0\uFF14\u6B73\u4EE5\u4E0A\u7261\u99AC", "\u6700\u512A\u79C0\uFF14\u6B73\u4EE5\u4E0A\u725D\u99AC", "\u6700\u512A\u79C0\u7236\u5185\u56FD\u7523\u99AC", "\u6700\u512A\u79C0\u77ED\u8DDD\u96E2\u99AC", "\u6700\u512A\u79C0\u30C0\u30FC\u30C8\u30DB\u30FC\u30B9", "\u6700\u512A\u79C0\u969C\u5BB3\u99AC" ]; var pagesData = []; var writers = getWriterElements(); var disp = document.createElement("div"); var dispName = document.createElement("div"); var dispList = document.createElement("div"); var dispButton = document.createElement("button"); document.body.appendChild(disp); document.body.appendChild(dispButton); disp.appendChild(dispName); disp.appendChild(dispList); with(disp.style){ position = "fixed"; right = "0px"; top = "0px"; backgroundColor = "#fff"; fontSize = "0.9em"; padding = "1em 0px"; MozOpacity = "0.8"; } dispButton.innerHTML = "open/close"; with(dispButton.style){ position = "fixed"; right = "0px"; top = "0px"; zIndex = "10"; } dispButton.addEventListener("click", function(){ changeDisp(disp); }, false); var i = 0; _onload(null); /**********/ function _onload(res){ if(res != null) pagesData.push(res.responseText); i++; if(requestURL(i) == location.href){ pagesData.push(""); i++; } if(i < 12){ GM_xmlhttpRequest({url: requestURL(i), method: "GET", onload: _onload}); } else _onfinish(); } function _onfinish(){ for(var i = 1; i < writers.length; i++){ with(writers[i].childNodes[1].style){ color = "#00f"; cursor = "pointer"; } writers[i].childNodes[1].addEventListener("click", function(){ var votes = getVotes(this.innerHTML); var listStr = []; for(var i = 0; i < titles.length; i++){ if(votes[i] == "") votes[i] = this.parentNode.childNodes[5].innerHTML; listStr.push([titles[i], ": ", "<a href=\"", requestURL(i+1), "\">", votes[i], "</a>"].join("")); } dispName.innerHTML = this.innerHTML; dispList.innerHTML = listStr.join("<br>\n"); }, false); } } function getVotes(writerName){ var votes = []; for(var i = 0; i < titles.length; i++){ if(requestURL(i) == location.href){ votes.push(""); continue; } try{ var first = pagesData[i].indexOf(writerName); var second = pagesData[i].indexOf("\r", first+1); var third = pagesData[i].indexOf("\r", second+1); var fourth = pagesData[i].indexOf("\r", third+1); var voteVal = pagesData[i].substring(third+4, fourth-5).replace(/[\w\s><]/g, ""); if(voteVal == "") voteVal = "\u975E\u516C\u958B"; votes.push(voteVal); } catch(e){ votes.push(""); } } return votes; } function getWriterElements(){ var writerElements = []; var elements = document.getElementsByTagName("tr"); for(var i = 0; i < elements.length; i++) if( elements[i].getAttribute("CLASS") == "gray12" && elements[i].childNodes.length > 3 ) writerElements.push(elements[i]); return writerElements; } function requestURL(n){ return pageURL.replace(/%num%/, num(n)); } function num(n){ if(n < 10) return "0" + n; else return n; } function changeDisp(element){ element.style.display = (element.style.display == "none")? "block": "none"; }