タグ

ブックマーク / ido.nu (5)

  • CPAN DateTime::Formatまとめメモ « ku

    こないだ MechanizedSeleniumでtwitterからnowaに投稿 を作ったときにメモったままそのままにしてたのを投稿。 perlだと DateTime::Format::* を使って my $str = "Tue, 01 May 2007 03:08:27 +0000"; my $dt = DateTime::Format::HTTP->parse_datetime($str); $dt->>epoch; で全部解決だけど日付フォーマットの名前がわからないとどのモジュールを使えばいいのかわからない。というわけでメモ。 DateTime::Format::HTTPのドキュメントにいくつかのフォーマットとその名前がリストされていてわかりやすかったです。 ISO8601 2006-11-22T18:37:34+0000こんなやつ。XMLRPCで日付を渡すときに使います。 My

  • ピヨピヨ ZeroMemory( ) » Blog Archive » Data::DumperでUTF-8フラグつき文字列をエスケープさせないようにするには

    変数の中身を表示してくれるperlのCPANモジュール、Data::Dumperは、UTF8フラグのついているデータがエスケープされて文字化け状態になってしまうため、UTF8で日語を扱う時に困る。でもそもそもUTF8フラグがついていなければエスケープされることもなくて困らないのはなんで?というわけでソースを読むと Data::Dumper::qquote() というメソッドの中で、文字列をエスケープする条件に my $bytes; { use bytes; $bytes = length } s/([^\x00-\x7f])/'\x{'.sprintf("%x",ord($1)).'}'/ge if $bytes > length; というトリッキーなコードが入っていた。UTF-8フラグがついていると、UTF8の文字列が正しく文字として認識されてlengthがバイト数よりも小さくなるので

  • ピヨピヨ ZeroMemory( ) » Blog Archive » クローラフレームワークXangoをsolarisで動かす

    POEを利用していて高速だというXango(1.08)を試してみました。環境はいつもの solaris x86 でこんなかんじ。 % uname -a SunOS dokodemo 5.10 Generic_118844-26 i86pc i386 i86pc Solaris まずXangoをインストールする前にPOEをインストールします。 依存パッケージのインストール途中 POE::Component::Client::HTTP の POE-0.3601/tests/30_loops/00_base/wheel_run.pm あたりでテストがこけてなんともならないので cpan> force install POE::Component::Client::HTTP で入れました。 Xango自体は確か問題なくインストールできた気がします。 Xangoについては YappoLogs:

  • かんたんすぎ かっこよすぎ Yahoo pipes « ku

    yahooyahooには似合わないくらいにかっこいいサービスを出した。その名も Pipes: Rewire the web とすごいサブタイトルがついています。rewriteはいい過ぎだけど。(よくみたらrewriteじゃなくてrewireだった) Pipes is a hosted service that lets you remix feeds and create new data mashups in a visual programming environment. と書いてあって、要するにフィードを混ぜたりするツール。UNIXのようにXMLデータをパイプをつないで処理したりできると便利だよね、というのは IBM dW : XML : XMLの論考: マイクロフォーマットのパイプストリーム - Japan にも書かれていた話。IBM dW の話は一般的なXMLの話で、行を単

  • 正規表現ひとつでHTMLをパースする « ku

    こないだsmartyよりフレキシブルでスマートらしい、PHPのテンプレートエンジン PEAR :: Manual :: HTML_Template_Flexy のコードをちらっと読んだ。 Flexyは初めてページを表示する時に、テンプレートをPHPのコードとして書き出して、2回目以降は書き出したPHPファイルを実行するようになっているのだけれど、そのコンパイラがあまり賢くないのだ。それをちょこっといじって、出力時の修飾子を複数つけられるようにすれば {pagetitle:utf8:u} みたいにして、文字コードを変換したあとURLエンコード、みたいな出力がスマートにかけていいと思う。それでコンパイルするところを追っていた。 ついでにsmartyもどうなってるんだろう、とコードをちらっと見てみてびっくりしたのが、HTMLのパースに preg_match() が多用されていること。こんなて

  • 1