高森太郎の日記。

高森太郎の日記です。

書籍情報を抜き取る。

 とあるところで刺激を受けて、そ〜いえばtDiaryamazon.rbやbk1.rbなんかって、普通に書籍情報を取得してきているよなぁ、と思い、書籍情報を引っこ抜くプログラムを作ってみようと思い立ち、いろいろごちゃごちゃ。

 とりあえずRubyでやってよう……とおもったのだが、そういえばRubyはやたらと使うが、そういえば自分VisualStadio.NETをもっているわけで、かれこれ何ヶ月か起動してないじゃないか、と、気づき、VB.NETでやってみることにした。
 とりあえず一番最後に作ったのが……汎用ストップウォッチ……の名をかりたラーメンタイマーでありますから……VBは、.NETである場合VB.NETと書いておいたほうがいいくらい文法が変わっているので……もう基本的な部分は似ている程度で、もうほとんど別物でありまして、その.NETにはあんまりなじめなかったのでありますよ。

 で、やってみたんですが、結構VB.NETのほうが良い感じ。なにがって、いろいろとオブジェクト指向になっていて……もう多分ずいぶんいわれていることでありますが、VB6.0だと

MyString2 = Mid(MyString, 3,10)

 としてあったのを.NETだと


MyString2 = MyString.Substring(3,10)

 としたりするのである。いや、mid関数もあるので従来のコードも大丈夫なんだけれど、どうせあるならというので、オブジェクト指向的なやり方でやってみり。

 ……しかし……実はまだオブジェクト指向というのがいまいちよくわかっていない感じであります。いや、結構根本的なところからなんですが(汗


 ちなみにHTMLから特定のデータを出力するやり方は、非常にオーソドックスなやり方であります。行ごとに取り出して、特定の文字列があるかどうか走査して、あったら取り出すというたったそれだけ。そこら辺の文字列は、HTMLをにらんで解析すればよい。


 それから、ここらへんってあんまりやっちゃいけないことっぽいので、良いこの皆さんは真似しないようにというか、大声で言わないように(ぉぃ だけどオーソドックスな方法だからこそ、結構汎用的にどこにでも使える感じであります。ちょっと工夫すれば、汎用化することも出来る……?


 後は、POSTを使ったページや、自動的に目的の情報があるURLを抽出、取捨選択して取得するなどの機能をつけたいな〜などと思うが……急に難しくなるわけで。

 どうもここら辺は、Rubyのopen-urlと、net/httpの関係ににている。(といいつつ二つとも呼んだことがある程度で実際に使ってみたことは無いんだけれど(汗))

 今までは、単純にURLを指定して落としてきたデータを一列ごと分析しているだけなんだけれど、POSTを扱うとなると非常に面倒でありまして……てかMSDNライブラリどうもあんまり書いてあることがわからないという(汗

 ああいうのって結構やっていて、ある日を境に突然わかるようになったりするのだが、そこまではこつこつやるしか。 読んでなにやってるかはかろうじてわかるんだけど、個々に出てくるこれは何? という風に芋ずる式に疑問が発生し、それを追っているだけでずいぶん時間がたつ。
 う〜ん、これは何か本を買ったほうがいいのだろうか。どうも電子文書じゃ自分は頭に入ってこない。にしても金は無いわけだが。もうちょっと気合をいれて、ちゃんと実用アプリを作っていけるようになにか作ってみたほうがいいのかもしれない。


 それからこういうものを作ってみて初めてわかったこと。それは、今ブロードバンドになってそれなりに帯域があるせいか、たいていの場合、ダウンロード時間よりもそれを表示する、レンダリングする時間のほうがずっと長いということ。そういうことを一切せずにダウンロードするだけだとかなりの枚数のページもあっという間に読み込めたりするし

 ともかく、最近妙にプログラム熱が上がっている今日この頃。