» IT系ニュース専用検索エンジン – Web Services by Yahoo! JAPAN, はてブ Yahoo!ニュースもGoogle Newsも古い記事は検索できないのがちょっと不便だなぁ、と思ってつくってみました。CNETやITmediaなど主要と思われるIT系のニュースサイトだけを検索対象にした検索エンジンです。 はてなブックマーク件数取得APIを一度使ってみたかったので検索結果の各ページの被はてブ数を載せています。 おまけとして、「被はてブ総数が一番多い検索結果は?」と検索結果の最初の10件の被はてブ数の合計のランキングも出しています。今のところ「Web2.0」が1位。 PEAR::Cache_Liteで一応キャッシュも作っていますが、違うユーザで同じ検索を短時間のうちに行うとは思えず、リアルタイムに2つのAPIにアクセスするとレスポンスが少々悪い。そこでAjaxload。Submitした瞬間にJavaScriptでこのNowLoadingのアニメーションを表示させると、次のページを読み込んでいる間、何となく間を持たせてくれるような気がします。最初はAjaxではてブを後から読み込むようにしようかとも思いましたが、このアニメーションで数秒待つのを我慢してもらえるならお手軽かなぁ、と。 また、検索結果の中で同じ内容の記事はひとまとめにしよう、と当初考えていました。 「すべての漢字を取り出す正規表現」をPHPで試す:phpspot開発日誌 を参考に、JavaScriptで var res = str.match(/[一-龠]{2,}|[ァ-ヴー]{2,}|[a-zA-Z\.]{2,}|[a-zA-Z]{2,}/g); こんな風に書くと記事の中からキーワードっぽいものを拾ってくれます。あとはTF-IDF風にキーワードに重みをつけて(CNETなどは記事のタイトルごとに”CNET Japan”が含まれるのでそういったキーワードの重みが下がるように)、共起率で記事の類似度を計る。許せるレベルの精度は出たのですが、2、3個の記事がグルーピングされてもあまり嬉しくなく、その割に共起の計算がそれなりに重いので一瞬待たされるのがネックでした。Safariで先ほどの正規表現が動かなかったのも難点。 今回はお蔵入りですが、クライアントサイドのCPUを使ってこういった計算をさせるのも面白いはず。 追記: AjaxLoad、というよりIEの問題でちゃんとアニメーションしないことを教えてもらいました。ホリデープログラミングなので許容範囲? » Ajaxload – Ceekz Logs
Recent Posts
Categories
Archives
- April 2011
- November 2010
- October 2010
- July 2010
- June 2010
- January 2010
- August 2009
- July 2009
- June 2009
- May 2009
- April 2009
- March 2009
- February 2009
- January 2009
- November 2008
- September 2008
- August 2008
- July 2008
- June 2008
- May 2008
- April 2008
- March 2008
- February 2008
- January 2008
- December 2007
- November 2007
- October 2007
- August 2007
- July 2007
- June 2007
- May 2007
- April 2007
- March 2007
- February 2007
- January 2007
- December 2006
- November 2006
- October 2006
- September 2006
- August 2006
- July 2006
- June 2006
- May 2006
- April 2006
- March 2006
- February 2006
- January 2006
- December 2005
- November 2005
- October 2005
- September 2005
- August 2005