MashUp
http://rmh.sub.jp/seo/500check.php
これをパクる。
JSONPを仕込む。
function JSONP(url){ var script = document.createElement('script') script.type = "text/javascript" script.src = url document.body.appendChild(script) } function callback(json){ var container = document.getElementById("results") container.innerHTML = "" var items = json.value.items var tr = [] if(items.length > 4){ for (var i = 0; i < 5; i++) { var entry = items[i]; var total = /([0-9]+)/.test(entry.description) ? RegExp.$1 : 0 var div = document.createElement("div"); container.appendChild(div); var html = "<table><tr><th>" + (i+1) + "位</th><th class='hilink'><a href='" html += "http://search.yahoo.co.jp/bin/search?n=100&ei=UTF-8&pstart=1&dups=1&p=link:http://" + entry.link html += "' target='_blank'>" + total html += "</a></th><td><a href='http://" + entry.link html += "' target='_blank'>" + entry.title + "<br /><span class='url'>" + entry.link + "</a></span></td></tr></table>" div.innerHTML = html tr.push(total) } } else { container.innerHTML = "failed" } var total = 0 for(var i = 0; i < tr.length; i++){ total += new Number(tr[i]) } total = Math.floor(total / tr.length) document.getElementById("total").innerHTML = total } function check_start(){ var word = document.getElementById('word').value document.getElementById('keyword').innerHTML = word document.getElementById('result_view').href = "http://search.yahoo.co.jp/bin/search?n=10&p=" + word document.getElementById("results").innerHTML = "<div id='premes'>読み込み中 . . .</div>" document.getElementById('result_table').style.display = "block" JSONP("http://pipes.yahoo.com/pipes/pipe.run?_id=NBRDuXgo3BG1XONpEpPZnA&_render=json&_callback=callback&_run=1&word=" + word ); }
感想
Pipes の部分に2時間くらいかかった。