タグ

ProgrammingとPerlに関するagwのブックマーク (433)

  • PerlでRSSを取得するメモ - F.Ko-Jiの「一秒後は未来」

    メモ代わりのエントリー。PerlRSSフィードを取得してデータベースに登録してみる。 (実際のスクリプトはこちら→rssfeed.cgi) ●使用したモジュール LWP::Simple サイトを取得 XML::RSS RSSを解析 DBI データベース操作 CGI CGIの操作 データベースの接続は$dbh = DBI->connect($data_source,$username,$password);。$data_sourceはMySQLの場合は「DBI:mysql:データベース名:host=ホスト名」となる。切断は$dbh->disconnect();。SQLの実行は、$sth = $dbh->prepare(“SQL文”);で準備をして$sth->execute;で実行できる。selectall_arrayrefのように、prepareをせずに一気にexecuteして結果を取得す

    PerlでRSSを取得するメモ - F.Ko-Jiの「一秒後は未来」
  • Plaggerを使ってみた

    Plaggerが流行っていたのですが、仕事でなかなか触る時間がなかったのですが、先週末やっと時間ができたので触ってみた。とりあえず、bloglines2gmailを使っていた身としては、bloglines → gmail以外の選択肢がいろいろ増えたのは素直に嬉しいところです。 んで、自分はlivedoor フレパとmixiの友達の日記を自前でRSSにしてそれをリーダーで読んでいたのですが、Plaggerではlivedoor フレパやmixiから取ってくるのはあっても、RSSやAtomなどフィードに出力するPublish機能がなかったようだったので、ないのかな?とIRCで尋ねてみたところ作る?というのでさっそく作っているところです。 とりあえず作ってみたものを見せてみたところいきなりの駄目出し(笑) 今後いろいろと修正を加えて次のリリースにはリリースしたいっす。 とりあえず、現状のコードはこ

  • RSSリーダをPlaggerに移行 - 嗚呼、貝になりたい

    一時期rss2*などでメールに飛ばすものを使っていた時期もあったが、 IMAPに飛ばしてメール単位にばらして読むことに利便性は感じない 整形具合が気に入らないらなかったw など、どうでもいい理由からこの手のツールからは遠のいていたのだが、Plagger(0.5.4)久しぶりに使ってみた。 環境が古かったりするので、少々時間がかかったが無事終了。FreeBSDのportsにおいてPerlを5.8に更新する際、/etc/make.confにPERL_VER、PERL_VERSIONをべたで書いてやらないと古いものを読みにいくようです。Mk/bsd.*あたりではうまくいかず。 (追記:use.perl port により/etc/make.confにPERL_VERなどを追記してくれるそうです。d:id:otsune有難うございます。) configは基的にデフォルトのままで、Bloglines

    RSSリーダをPlaggerに移行 - 嗚呼、貝になりたい
  • [Lifehacks]Plaggerのインストールと使いかた - ichan::Weblog (2006-03-01)

  • Plaggerで新着Feedを検知したら物理的に通知してくれるモジュール

    Plaggerで新着Feedを検知したら物理的に通知してくれるモジュール むかしはメールが届くとタッチおじさんが動いて着信通知をしてくれる機械がありました。 じゃぁ、新着Feedがあったら物理的に通知する手段があったら便利じゃね? ってことで物凄くがんばって開発しました。 Plagger::Plugin::Notify::Eject Linuxなら多分動くと思います。 利用例↓ 手元にあるクライアントマシンのみで動かさないと大変なことになりますがw 物理世界のオブジェクトともつながる!それがPlaggerクオリティ! Posted by Yappo at 2006年03月01日 00:20 | TrackBack | Perl

  • YappoLogs: Plaggerの野良Pluginたち

    Plaggerの野良Pluginたち とりあえず現時点でのPlagger野良Plugin(以下 Nolugger)をリストアップ。 何かしらの事情でcommitされていなかったり、つくり途中だったり、ペンディング中だったり、野良の気満々だったりと色々あります。 commitされる物が大部分かもです。 体のAPIとの辻褄が合わなくなって動かなくなっても泣かない。 だってNoluggerだから。 Publish::Feed RSS/Atomフィードを吐き出してくれます。 Publish::Hotline Hotlineってなんだったっけ? Store::DBIC Store to SQLite? Filter::HatenaDiaryKeywordLink はてなキーワードをつけてくれるフィルターです。 itmediaとかの原稿にはてな気ワードリンクがつきます。 Filter::StripI

  • Plagger::Plugin::Publish::HatenaBookmark - fubaはてな

    なんでこれがないのかよ(;´Д`)と思ったけどみんなメインがはてブなのか。tracの使い方わかんないので野良で放置 家にコミットされたよ! これで安心 おっとパッチです。修正されました 30c30 < my $tag_string = @tags ? join(' ', map "[$_]", @tags) : ''; --- > my $tag_string = @tags ? join('', map "[$_]", @tags) : ''; config.yaml - module: Publish::HatenaBookmark config: username: fuba password: aybabtu interval: 2 post_body: 1 参考 del.icio.us と はてなブックマークに cross-post: blog.bulknews.net htt

    Plagger::Plugin::Publish::HatenaBookmark - fubaはてな
  • Plagger とプラグインシステム: blog.bulknews.net

    Plagger とプラグインシステム というわけでここ数日 Plagger Blog みたいになってますがご容赦を。Plagger ネタを追いかけたい方は del.icio.us の plagger タグ でほぼ網羅できているとおもうので、ここをチェック。 で、Plagger とプラグインシステムです。「なんで Plagger はプラグインをコアの中にいれて配布しているの? 別個に配布したほうが便利なのに」 という疑問を当然お持ちの方もいるかとおもいました。 ここはだいぶ議論になったところで(といっても IRC チャネル #plagger-ja で小1時間しゃべっただけですが)、実際に Trac でチケット #44: Reorganize plugin directories in SVN も切られてます。 ただ、現状は svn の plagger/lib/Plagger/Plugin 以

  • Plaggerで新着Feedを検知したら物理的に通知してくれるモジュールのWindows版 - Kickstart my heart

    Plaggerで新着Feedを検知したら物理的に通知してくれるモジュールを読んで感銘を受けたのでWindows版を書きました。 22c22,29 < system('/usr/bin/eject') if $self->{count}; --- > if ($self->{count}) { > if ($^O eq 'MSWin32') { > require Win32::MCI::Basic; > Win32::MCI::Basic::mciSendString("Set CDAudio Door Open Wait"); > } else { > system('/usr/bin/eject'); > } > } Yappoさんのブログにコメントしようと思ったのですが、Internal Server Errorで書けなかったのでここで。

  • 4-2. Perl の危険な関数

    Perlには他のプログラムを起動したり,文字列で与えられた式を実行時に解釈実行する機能を持つ関数が用意されている。こうした関数に与える引数は,十分に吟味しないと,悪用されて意図しないコマンドを実行させられる。 Perlには外部プログラムとの連携機能が複数組み込まれている。Perlは連携機能を実現するため内部的にUnixシェルを起動する(注1)。そのため連携機能をユーザ入力データなどの外部から与えられるデータと組み合わせて使用する場合,外部からシェルコマンドを混入され実行されてしまう可能性がある。次の関数はこのような問題につながる注意すべき関数や構文である。 open system, exec, ``(backticks) <>(fileglob),glob C言語などのコンパイル系言語と異なりPerlはスクリプト系言語である。Perlは実行時にプログラムを解釈して実行する。eval

  • Tociyuki::Diary - perlでのクロージャの3パターン

    id:naoya さんが Perl のクロージャの使い道を考えておられるようです。便上して、私が良く使う、3つのパターンを紹介してみます。なお、単なるコード・リファレンスとしての使い方は除外して付随するコンテキストが意味をもつクロージャの場合に限ります。 (2006年2月14日修正 use Fcntl のパラメータに :DEFAULT が抜けていたので追加しました。) コールバック・パターン イテレータにクロージャを渡して、イテレータの中から繰り返し呼び出してもらってコンテキストに副作用を及ぼす使い方です。クロージャの使い方の中でも最も自然に使えるものだと思います。以下、Ruby のブロック呼び出しっぽくコード・リファレンスを $yield パラメータに渡すことにします。へそ曲がりに BBS の CGI コード用に flock による排他ロックを例にしてみます。 package Mutex

    Tociyuki::Diary - perlでのクロージャの3パターン
  • いやなブログ: 配列操作の比較表: Ruby, Python, JavaScript, Perl, C++

    配列操作の比較表: Ruby, Python, JavaScript, Perl, C++ プログラムを書いていると、他のプログラミング言語の記憶とごっちゃになって、「配列の後ろに要素を追加するのは push だっけ、 append だっけ」などと混乱することがあります。特に Ruby, Python, JavaScript はコードの書き方が似ているので、この問題が起きがちです。 そこで、備忘録として、 Ruby, Python, JavaScript, Perl, C++ の配列操作の比較表を作りました。一番慣れている Ruby を基準にしています。間違いなどがあったらご指摘いただけると助かります。他の言語のもあるといいなあ。 Ruby (Array) Python (list) JavaScript (Array) Perl (@) C++ (std::vector)

    agw
    agw 2005/11/05
  • SQL::Abstract - Perlのデータ構造からSQL文を生成する - perldoc.jp

    名前¶ SQL::Abstract - Perlのデータ構造からSQL文を生成する 概要¶ use SQL::Abstract; my $sql = SQL::Abstract->new; my($stmt, @bind) = $sql->select($table, \@fields, \%where, \@order); my($stmt, @bind) = $sql->insert($table, \%fieldvals || \@values); my($stmt, @bind) = $sql->update($table, \%fieldvals, \%where); my($stmt, @bind) = $sql->delete($table, \%where); # それから、これらをDBIステートメントで使う my $sth = $dbh->prepare($stmt);

    agw
    agw 2005/10/29
    SQL::Abstract podの日本語訳。