にこぐらふ 0.1.4 を公開してみた

2008.4.13(日) 11:53   タグ: Perl, 開発ごっこ, にこぐらふ
にこぐらふ 0.1.4.

はじめに

調子に乗って,昨日に引き続きもうちょこっと機能追加を行い,ver.0.1.4 として公開しました.

にこぐらふ

何を追加したかを,以下.

RSS

新着50件のにこぐらふを RSS として出力します.今のところ,フォーマットは RSS 2.0 のみに対応しています.

概要部分がテキトーだったりするので,今後見直し修正を加えていくことにします.

ちなみに,この部分の実装には,XML::RSS モジュール を利用しています.便利ですね,これ.あ,これをインストール後に,DateTime::Format::Mail がない,DateTime::Format::W3cDTF もない,とか怒られたので,加えてインストールしました.

Twitter アカウント取得

ということなので,さっそくアカウントを取得してみました.

Twitter / nicograph

にこぐらふが新しく生成されるたびにステータスが更新されるようになっています.

このアカウントを follow することでどんなにこぐらふが生成されたかをチェックすることができるわけですね.

この辺りの実装には,Net::Twitter モジュール を使いました.超簡単に Twitter アカウントの操作ができちゃいますね.

おわりに

というわけで,よろしければ...と,昨日に引き続き.

あ,CSS を IE に対応させることをすっかり忘れてた...次はこの辺に着手かな.ロゴなんかもそろそろなんとかせねば...ネタ募集ちゅう,とひそかにつぶやいてみます.

にこぐらふ 0.1.3 を公開してみた

2008.4.12(土) 13:29   タグ: 開発ごっこ, にこぐらふ

はじめに

細かい部分をいくつか修正したり元に戻したりするなどして,ver.0.1.3 として公開しました.

にこぐらふ

主な修正点

トップページ

右部にある 「にこ数 Top5」「にこ率 Top5」 を,それぞれ 「今日のにこ数 Top3」「今日のにこ率 Top3」 に置き換えました.

時間が経過するにつれて,徐々に変化がなくなってくるんじゃないかな,ということで.

また,「最新着にこぐらふ」 においては,グラフの対象となる動画が重複するのを避けて表示していましたが,どうやら私のSQL分不足のために,この表示自体がおかしなコトになっていました.(コメントの取得時間と 「w」 の数が対応していなかったりとか諸々 ><)

ので,重複を許すことにしちゃいました.

にこ数順,にこ率順

特定の日におけるにこ(数|率)の表示に対応しました.

たとえば,今日のにこ数順 とか 2008年 3月19日のにこ率順 とか,です.

にこぐらふ 0.1.3.

また,それに伴い,にこ(数|率)順に関するページに 「にこ(数|率)カレンダー」を追加してみました.

日付に加え,その日のグラフの数が表示されます.また,その日のにこ(数|率)の平均値によって,赤っぽい背景色が濃淡するようにもしてみました.(その辺の基準値は,現在テキトーに設定しています.今後要調整になるかも.)

おわりに

というわけで,よろしければ.

[memo][perl][linux] XML::Parser のインストールに失敗する件

2008.4.11(金) 15:23   タグ: 覚え書き, Perl, Debian, linux

はじめに

にこぐらふ をごにょごにょするために XML::RSS モジュールでも入れてみようとしたところ,これが必要としているモジュール XML::Parser がない,と怒られました.

ではまずそれからインストール...と,ここでも怒られてしまいました.

以下,その辺のメモです.

原因

どうやら expat なライブラリがないためらしいです.

解決

Debian さんを使用ちゅうなので,apt で探してみることに.

A というライブラリの場合,たいていは libA のような名前で apt のリストに入っているので,ここでは,libexpat としてみたところ,libexpat1 とか libexpat1-dev とかいうのが候補にあったので,考えなしにインストールしてしまいました.

% sudo apt-get install libexpat1 libexpat1-dev

その後 XML::Parser も問題なく入りました.

おわりに

というわけで,XML::RSS も無事にインストールできました.

[javascript] 文字列を選択すると勝手にWeblioへ調べにいくブックマークレットを作ってみた

2008.4.10(木) 18:24   タグ: JavaScript

はじめに

こちらのエントリ と昨日 in-box (GTD的な意味で) に入れたメモにインスパイアされて,ちょっと作ってみました.

何を?

Webページ上の任意のテキストをマウスで選択すると,勝手に Weblio を新しいウィンドウ or タブで開いてその文字列について調べにいく,というアクションを起こすためのブックマークレットです.

まずはお試し

1.JavaScript を読み込む

次のリンクをクリックすることで,先に書いたアクションを起こすための JavaScript を読み込みます.

Select’n'Search!

2.任意のテキストを選択する

本エントリの適当な文字列をマウスドラッグで選択します.この段階では,マウスのボタンは押したままにしていてください.

3.Controlキーを押したままマウスボタンをはなす

Controlキーを押し,そのままの状態でマウスボタンをはなします.

要は,マウスボタンをはなすときに Controlキーが押されている状態であればOKです.

4.Weblio が開く

選択した文字列についての Weblio のページが開きます.

ブックマークレットとして使う

先のリンクをブックマークレットとして登録することで,任意のページのテキストについて同様のことができるかと思います.

その他

現在,Opera 9,Firefox 2,Safari 3 にて動作を確認しています.また,Internet Explorer 6 で動作しないことも確認しています.

また,フレームを越えた文字列については対応していません.(ですが,希望のフレームをアクティブにした後にブックマークレットを実行することで解決するかもです.)

選択文字列の取得方法については以下を参考にしていますので,詳細はそちらをご覧ください.

岩家ぶろぐ » [javascript] bookmarklet で選択文字列を取得する件で

おわりに

言葉を調べたりする際のほんのちょっとしたツールとなれば幸いです.

また,行き先を Weblio から他のサイトに変えてみることで別の使い方ができるかも,です.

おまけ: ソースコード

ブックマークレット実行時に読み込むJavaScriptのソースコードを以下に示しておきます.

( function() {
/*--------------------------------------------------------------------------------*/
var d = document;

/**
 *
 *  jQuery のロードを開始する
 *
 **/
if( typeof jQuery == 'undefined' ) {
  var e = d.createElement( 'script' );
  e.type    = 'text/javascript';
  e.src     = 'http://iss.ms/js/lib/jquery-1.2.3.pack.js';
  e.charset = 'utf-8';
  d.body.appendChild( e );
}

/**
 *
 *  以下,jQuery がロードされた後に実行される関数
 *
 **/
var jQueryLoaded = function() {
  var b = $( d.body ); // body

  b.mouseup( function( e ) {
    var text = getSelection();
    if( e.ctrlKey && text ) {
      window.open( 'http://www.weblio.jp/content/' + text, 'iss.ms/selectnsearch'  );
    }
  } );

  /**
   *
   *  選択文字列を取得する
   *
   *
   **/
  var getSelection = function() {
    return getSelectedText( window ) || '';

    function getSelectedText( w ) {
      var t = '';
      try {
        t = w.getSelection().toString();
      } catch(e) {
        return;
      }
      if( t ) {
        return t;
      } else {
        var ties = getTextInputElements( w );
        for(var i = 0; i < ties.length; i++ ) {
          var tie = ties[i];
          var s = tie.selectionStart;
          var e = tie.selectionEnd;
          if( s != e ) {
            return tie.value.substr( s, e-s );
          }
        }
      }
      return t;
    }

    function getTextInputElements( w ) {
      var elms = w.document.getElementsByTagName( '*' );
      var ties = [];
      for( var i = 0, e; e = elms[i]; i++ ){
        var tag = e.tagName.toLowerCase();
        if( tag == 'textarea' ) {
          ties[ties.length] = e;
        } else if( tag == 'input' ) {
          var ty = e.type.toLowerCase();
          if ( !ty || ty == 'text' ) {
            ties[ties.length] = e;
          }
        }
      }
      return ties;
    }
  };
};

/**
 *
 *  jQuery がロードされるまで待機
 *
 */
var wait4jQuery =  function() {
  if( typeof( jQuery ) == 'undefined' ) {  setTimeout( wait4jQuery, 0 ); }
  else { jQueryLoaded(); }
};
wait4jQuery();

return;
/*--------------------------------------------------------------------------------*/
} )();

[twitter][javascript] 一度もtwitしていないfollowingがいるときのfriendsなAPIについて...で,ついともにた 0.1.4 公開

はじめに

Twitter API でお友達 (following) のリストを取得してデータを加工する際,一度もtwitしていないユーザの存在を考慮した方がよさげかも.まぁごく稀ではあるでしょうが...

本題

この API をたたくと,更新が新しい順に最大100人分のお友達のリストが特定のフォーマットで得られます.JSON の場合,

[ { /* お友達のデータ */ }, { /* お友達のデータ */ }, ... ]

のようなものが得られるわけです.

これからあるお友達のtwitの内容 (テキスト) を取得するには,

a_friend.status.text

のように,status プロパティを参照するわけですが,一度もtwitしていないお友達の場合,怒らてしまいます.

というのも,status プロパティが undefined なため です.

typeof a_friend_never_twitted.status == undefined; // true

以上,得られた JSON をごにょごにょする際には,一度もtwitしていない場合も考慮に入れておいた方がいいよね,というお話でした.

そんなわけで

その辺を踏まえた 「twitomonitor [ついともにた]」 の修正版 (0.1.4) を公開しました.

twitomonitor [ついともにた]

ひとまず,次のようなコードを該当部分に追加することで対処しておきました.

var json = 取得したJSON;
for( var i = 0; i < json.length; i++ ) {
  var friend = json[i];

  // statusプロパティが未定義の場合
  if( ! friend.status ) {
    friend.status = {
      id:         0,
      created_at: ‘’,
      text:       ‘’
    };
  }

  /* … */
}

おわりに

1か月ぶりにコードを見ましたが,もう処理の流れを忘れかけてました orz

やっぱり紙とかに残しといた方がいいかなぁ...

ぶろぐ内検索

WCAN 2008 Winter

wcan2008winter

DeLLa.JS

細々公開ちゅう

  • DQWindowManager
  • ごよてい?
  • にこぐらふ
  • twitomonitor [ついともにた]
  • issm's ...
  • 今さら攻略 スーパーマリオブラザーズ 2

I'm doing...

Loading...

最近のエントリ

最近のトラックバック

最近のコメント

タグ

月別

あわせて読みたい

あわせて読みたいブログパーツ

数値いくつか

  • issmの泳いだ距離
  • issmの100m個メタイム(秒)
  • issmのBMIとissmの体脂肪率
  • issmの最高血圧とissmの最低血圧

スポンサード リンク

メタ情報