Just another Ruby porter,

〜2004年2月下旬〜


<Prev(,) | Next(.)> | Recent(/)>> | RDF

2004-02-21 (Sat)

[Ruby] rss で RSS 1.0 生成

ありがとうございます。 いえいえちゃんと Bloglinesに登録して見てます。

% ruby -rrss/1.0 -e 'print RSS::RDF.new'

で空のRSSが作れることは番長(誰)からの助言でわかったんですが、 中身をどうやって埋めればいいか調べるのが面倒でそのまま忘れてました。

早速と言いたいところだけど、この日記はawkで変換してるからなあ。 そこをなんとかしないと。


2004-02-22 (Sun)

[RSS] RSSの中身

titleとlinkぐらいあればよさげだな。 dc:dateはちょっと困る。 作った日のタイムスタンプだと、 過去5日分のタイムスタンプをどこかに覚えておかないといけないし。

いや、5日分作るとか考えずに、rssはその日の分だけにすればいいのか。 どうせ1日1回しか更新しないんだし。

だとすると出来上がったhtmlをrubyでparseしたほうが楽だな。 descriptionも何も考えずにhtmlのまま入れると、 勝手にescapeしてくれるようだし。

[RSS] jard.rb

というわけで、ad hocな index.rdfをでっちあげてみる。ad hocすぎていやになるくらい。


2004-02-23 (Mon)

[RSS] dc:time

というわけで、こちらもタイムスタンプを入れた。

[RSS] descriptionに全文

ぐぐってみるとdescriptionに全文入れちゃうのは邪道だという意見もある。 まあ、当然だ。全部入れたらsummaryじゃないし、 しかもHTMLとして入れちゃってるんだから、 もう邪道どころか邪悪かもしれない。 やめる気はさらさらないんだけど。

というか、要約するほど書いてないのであった。 一日一回なんだからそのくらいの富豪を大目に見てもらおう。

でも、ちょっと弱気にcontent:encodedを使ってみる( jard.rb)。


2004-02-24 (Tue)

[RSS] index.rdfに5日分の情報を残す

1日分だけじゃ物足りないので、前回吐き出したindex.rdfを読んでparseしようと思う。 RSS::Parser.parseを使えばokだけど、 どうも内部的にはutf-8で処理しているらしく、 後から追加する場合はutf-8に変換したほうがよさげだ。

あとは5日分だけ残して要らないitemを消す。 rss.items, channel.items.Seq.lisの各配列を直接いじればできそう。 dc:dateでソートするか。 でも、別々にいじるのはちょっと面倒だな。 それは5日たまってから考えよう。


2004-02-25 (Wed)

[Soft] OpenSSH 3.8p1

cygwin-announce MLでOpenSSH 3.8p1が出たことを知る( OpenSSH 3.8p1 )。てゆか、 Cygwinは用意するの早過ぎ 。 それはそれとしてkeep-aliveが使えるようになったのがうれしい。 http://marc.theaimsgroup.com/?l=openssh-unix-dev&m=107764058601617&w=2

* ssh(1) now supports sending application layer
  keep-alive messages to the server.  See ServerAliveInterval
  in ssh(1) for more information.

会社で試したときになぜかうまくいかなかったんだけど、 そうか、ServerAliveIntervalだったのか。

ServerAliveInterval
  Sets a timeout interval in seconds after which if no data has
  been received from the server, ssh will send a message through
  the encrypted channel to request a response from the server.  The
  default is 0, indicating that these messages will not be sent to
  the server.  This option applies to protocol version 2 only.

この0が原因のようだ。明日試そう。


2004-02-26 (Thu)

[Soft] OpenSSH 3.8p1のTCPKeepAliveとServerAliveInterval

TCPKeepAliveはdefaultでyesだから、てっきりそれだけでkeep-aliveになると思うよね、普通。でもServerAliveIntervalのdefaultは0だからサーバには何も送られない。これは盲点だ。

というわけで適当にServerAliveIntervalに60(秒)とか0以外の数値を指定してやる必要がある。


2004-02-27 (Fri)

[Ruby] RSS Parserにxmlscanを使ってみる

なひさんが不用意な摩擦を願ってるらしい(嘘)ので、xmlscanを使ってみよう。 xmlscanをインストールすればRSS Parserは、 勝手にxmlscan使う(優先順位が高い)ようになるので、 RSSを吐くところでわかる。kouさんも

内部的にはutf-8で処理しているのはXMLパーサとしてREXMLを 使っているからでしょう.ちなみに,RSS::RDF#encodingで内部 エンコーディングがわかります.

おっしゃっているので、確認。

% ruby -rrss/1.0 -e 'p RSS::Parser.parse($<.read).encoding' index.rdf
"euc-jp"

なるほど。

[Mail] ruby-bugsへのspam

しまった。最近ruby-bugsへのspamが通ってるなあ。家のbogofliterでは完全にブロックしてるから気づかなかった。学習させとこ。


2004-02-28 (Sat)

1/4517039

めでたく1/4517039に選ばれた。昨日来た「最終通告」のハガキもこれが原因か?タイミングがよすぎ。住所がその当時のものだし。 今度住所を書くときは番地の後にAとかBとか、 どこで書いたものかわかるように追加しとこう。

金券500円ねえ。3ヶ月無料ぐらいかと思ってたんだけど。

[Mail] 「市販品より高精度」を謳う、オープンソースのスパムフィルター登場

この99.97%というのはすごいな。早速 CRM114から試してみよう。 と思ったけどCRM114_Mailfilter_HOWTO.txtを読んで、インストールして終了。 設定はまた明日にしよう。

[Ruby] index.rdfにはすでに5日分たまった

すっかり忘れていたが、index.rdfにはすでに5日分たまっている。 rss.itemsとchannel.items.Seq.lisを時刻でsortして古いものを削除すればいい。 itemは1日1個とは限らないので、ちょっと面倒だな。 というかsortするまでもなく古い順に並んでいるのであった。

でも考えてみると1日1個のitemにしても全然問題ない。 1日1回の更新なんだから6個になったらshiftするだけで済むじゃん。うーむ。


2004-02-29 (Sun)

[Mail] CRM114の設定

CRM114_Mailfilter_HOWTO.txtに従って.CSSファイルを作る。 CSSとはCRM114 Sparse Spectraという意味らしい。 まずは空の.CSSファイルを作る。

% mkdir ~/crm; cd ~/crm
% cssutil -b -r spam.css
% cssutil -b -r nonspam.css
% ls -l
total 24616
-rw-r--r--    1 watanabe ruby     12582924 Feb 29 21:44 nonspam.css
-rw-r--r--    1 watanabe ruby     12582924 Feb 29 21:44 spam.css

いきなりでかいね。

and you will have created _empty_ spam.css and nonspam.css files in
your current directory (that is, the files are full-size, but contain
no information.  They'll be full of binary zeroes). 

という話なので、これ以上は大きくならないらしい。

Method C - Build And Preload .CSS Files From Fresh Spam and Nonspam

If you really feel you must start by preloading some sample spam, copy
your most recent 100Kbytes or so of your freshest spam and nonspam
into two files in the current directory.  These files MUST be named
"spamtext.txt" and "nonspamtext.txt" They should NOT contain any
base64 encodes or "spammus interruptus", straight ASCII text is
preferred.  If they do contain such encodes, decode them by hand
before you execute this procedure.

この条件を満すファイルを用意するのが結構面倒だなあ。 とりあえず、Method BのPre-LEARNedなファイルで、 ruby-talkの2月分を試してみるとやっぱ散々な結果に。 スクリプトが含まれているとどうしてもspamと認識されやすい。

結論としては学習次第ということで(それは当たり前だ)。


<Prev(,) | Next(.)> | Recent(/)>> | RDF


WWW を検索 jarp.does.notwork.org を検索

わたなべひろふみ
Key fingerprint = C456 1350 085F A320 C6C8 8A36 0F15 9B2E EB12 3885
Valid HTML 4.01!