JavaScript 手取り足取りスレッド
プロバイダ規制で書き込めないからこっちに書いてみる実験。
アマゾンのページ(ソース)から著者を抜き出したいんですが、
どうすればいいんでしょうかタイトルはidがありますし、
var title = document.getElementById("btAsinTitle")とかで、
出版社の方もなんとかなったんですが、著者がどうやって
ぬいたらいいのかスタックしてます。よろしくお願いします。
http://pc11.2ch.net/test/read.cgi/hp/1205922529/881
//タイトルから拾う方法 var head = document.getElementsByTagName('head')[0].innerHTML; var cho = head.match(/<title>.+?\: (.+?)\:/); var ma = cho[1].split(/, /g); for(var i=0;i<ma.length;i++){ console.log(ma[i]); } //xpathで拾う方法 var cho = document.evaluate('//a[..//@class="buying"][preceding-sibling::h1]', document, null, 7, null); for(var i=0;i<cho.snapshotLength;i++){ console.log(cho.snapshotItem(i).textContent); }
感想
- matchで.+?を多用して抽出するのがマイブーム。どうなんだ?
- なるべく仕様変更に対して強度を高めたほうがいいとおもうんだけど、preceding-sibling::h1のとこ弱そう。