Creazy!

WEBエンジニア・ヤガーのテック・ガジェットブログ

技術情報

勝手に添削:bookmarklet – ページに含まれるURLを抽出してTSVにする

投稿日:


一回やってみたかったんだ、「勝手に添削」
しかも、dankogaiさんの(笑)
お題は下記です。
CodeZine:Webページに含まれるURLを抽出し、Excelにまとめて保存する(HTA)
404 Blog Not Found:bookmarklet – ページに含まれるURLを抽出してTSVにする
IEだけじゃイカンという意味では、danさんの記事に賛成。
ですが、

例えばSafari3では下がうまく行かず(ウィンドウに何も表示されない)、Firefox2では上がうまく行きません(一行しかpromptに入らない)。OperaはどちらもOK(優秀!)。IEは未確認(報告お願いします)。ブラウザーにあわせて使い分けて下さい。

via: 404 Blog Not Found:bookmarklet – ページに含まれるURLを抽出してTSVにする

というわけで、クロスブラウザになってませんねw
FFのpromptに複数行の文字列を入れられないのはどうしようもないので、別ウィンドウに開く場合にSafariで動かない件に対応してみましょう。
Extract Links as TSV (window)

javascript:(function(){w=window.open('','');d=w.document;d.open();d.write('<plaintext>'+(function(a){var r=[];for(var i=0;i<a.length;i++)r[i]=a[i].innerHTML+'\t'+a[i].href;return r.join('\n');})(document.getElementsByTagName('A')));d.close();})();

多分、document.open();document.close();を省略したのがマズかったんじゃないかと思います。あと、voidで全部を囲ってるのもあやしいかったけど、とりあえず上記で、IE/FF/Safari動きます。
更に、上記で出力したページからWin+IEで小ピーしてExcelにはりつけてもうまくセルに合わなかったので、<plaintext>じゃなくて<textarea>に出力したらうまくいきました。
‘+(function(a){var r=[];function e(s){return s.replace(//g,’&gt;’);}for(var i=0;i ‘+e(a[i].innerHTML)+’ ‘+e(a[i].href)+’

‘;return r.join(”)+’‘;})(document.getElementsByTagName(‘A’)));d.close();})();”>Extract Links as TSV (window+table)

javascript:(function(){w=window.open('','');d=w.document;d.open();d.write('<ta'+'ble border=1>'+(function(a){var r=[];function e(s){return s.replace(/</g,'&lt;').replace(/>/g,'&gt;');}for(var i=0;i<a.length;i++)r[i]='<tr><td>'+e(a[i].innerHTML)+'</td><td>'+e(a[i].href)+'</td></tr>';return r.join('')+'</ta'+'ble>';})(document.getElementsByTagName('A')));d.close();})();

enjoy!

-技術情報

執筆者:


comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

関連記事

Twitterの古い公式ウィジェットが使えなくなるのでご注意を!

すっかり忘れ(たフリをし)ていましたが、Twitter API v1.1への移行期限3月5日までおよそ1ヶ月と迫ってきており、開発者各位におかれましては対応状況は如何でしょうか?ボクはかんばしくありま …

#mtddc Movable Type Developers & Designers Conference Tokyo 参加レポート

今日はこのブログでも愛用しているMovable Typeの大型イベントがあるというので参加してきました。 日時:2010年2月5日 (金) 14:00 ~ 19:00 (予定)会場:東京・ベルサール九 …

YouTubeが無料で商用利用も可能なオーディオライブラリーを公開。約160曲がダウンロード可能!作業用BGMにも最高!

YouTubeでは管理画面内の編集機能で利用できるオーディオトラックが15万曲も用意されていますが、あくまでYouTube内での利用しかできない制限がありました。今回ダウンロード可能なオーディオライブ …

no image

オンラインビジネスセミナー「注目される“Twitter(ツイッター)”国内でのビジネス活用事例とポイント」参加レポート

今日は、六本木のアカデミーヒルズ49で開催された「注目される“Twitter(ツイッター)”国内でのビジネス活用事例とポイント」セミナーを聴講してきました。 ゲスト講師として株式会社CGMマーケティン …

サムネイル作成APIのパフォーマンスを比較してみました

すでに、ブログやマッシュアップサービスで定番となった感のある、ページのサムネイルを作成してくれるAPIですが、とりあえず有名なSimpleAPIを使っているという人が多いのではないでしょうか? でも、 …

スポンサードリンク

スポンサードリンク