« 2005年12月 | メイン | 2006年02月 »
2006年01月31日
[雑感] ライブドアの技術者
以前、技術雑誌もしくは技術情報系サイトで、ライブドアのポータルサイトの開発・運用について読んだことがある。
サービスのオリジナリティは著しく欠如していて、笑っちゃうほど露骨なパクリを平気でやっちゃうけど、ものまねとはいえ新規サービスを開発する能力と膨大なトラフィックを低コストでさばく技術力はあなどれない。
もし、今自分がインターネットサービス系の会社を経営していたら、ライブドア技術者の引き抜きを考えたと思う。LAMP(LAPP)+自作サーバで、サービスを構築・運用できる技術陣がほしい。ライブドアのほかに、同様の技術力を持っていると私が把握している会社に、はてな、ミクシィ、住商グレンジャーなどがある。
上記の技術力に、サービス企画力がマッチすれば、地方からでも狼煙を上げられると信じている。
投稿者 nekobara : 21:55 | コメント (7) | トラックバック
[休肝日] NONDRINKING
今週、2日目
投稿者 nekobara : 21:54 | コメント (0) | トラックバック
[その他] 氷壁 (第三回)
チャンネルを合わせたが、山のシーンがほとんど出てこないため、画面に集中できなかった。
本を読みながら、ときどき画面をみるという感じ。
で、今回気になったのは、やはり鶴田真由。あの鼻にかかった声が、なんとも鶴田真由。
画面を見ないでいると鶴田真由のセリフが耳につく~
投稿者 nekobara : 11:55 | コメント (0) | トラックバック
[予定] 1月31日の行動
■午前
・事務処理
■午後
・AI社
投稿者 nekobara : 09:56 | コメント (0) | トラックバック
[運動] 本日の体操
朝:腰痛予防体操 2セット、懸垂35、スクワット50
夜:腰痛予防体操 2セット、ストレッチ、腹筋39、懸垂35、スクワット50
体重 64.4kg 体脂肪率 17%
投稿者 nekobara : 09:52 | コメント (0) | トラックバック
2006年01月30日
[休肝日] NONDRINKING
今週、初日
投稿者 nekobara : 21:39 | コメント (0) | トラックバック
[予定] 1月30日の行動
■午前
・子供病院
■午後
・NET環境調整
投稿者 nekobara : 11:57 | コメント (0) | トラックバック
[運動] 本日の体操
朝:腰痛予防体操 2セット、懸垂35、スクワット50
投稿者 nekobara : 11:54 | コメント (0) | トラックバック
2006年01月27日
[予定] 1月27日
■午前
・ルータのファームウェアアップデートとpptp接続テスト
■午後
・事務処理
・AI社
投稿者 nekobara : 09:44 | コメント (0) | トラックバック
[運動] 本日の体操
朝:腰痛予防体操 2セット、懸垂35、スクワット50
投稿者 nekobara : 09:38 | コメント (0) | トラックバック
2006年01月26日
[夕食, 料理] 牛肉野菜
純麦入りごはん
牛肉野菜(表示は国産牛肉)
キュウリのサラダ
みそ汁
投稿者 nekobara : 19:59 | コメント (0) | トラックバック
[予定] 1月26日の行動
■午前
・ルータの交換とpptp接続テスト
■午後
・AI社
投稿者 nekobara : 08:33 | コメント (2) | トラックバック
[運動] 本日の体操
朝:腰痛予防体操 2セット、懸垂35、スクワット50
夜:腰痛予防体操 2セット、ストレッチ、腹筋37、懸垂36、スクワット50
投稿者 nekobara : 08:31 | コメント (0) | トラックバック
2006年01月25日
[読書] チーズはどこへ消えた?
| チーズはどこへ消えた? | |
![]() | スペンサー ジョンソン Spencer Johnson 門田 美鈴 おすすめ平均 ![]() 人生の転換点に読んでもらいたい 賛否両論 悪い本ではないけど、なんでベストセラー? 今の私には必要の無い本でした。 悪い本ではない。が、大した本でもない。Amazonで詳しく見る by G-Tools |
確か6年ぐらい前に話題になった本。美容室の待合室にあったので手にとってみた。薄い本で内容も簡単なので、斜め読みで15分ぐらいで読んだ。アマゾンのレビューの「悪い本ではないが大した本でもない」が的を射ている。
それにしても、薄くて、すかすかで、簡単だったから、ベストセラーになったのか・・・・
投稿者 nekobara : 20:16 | コメント (3) | トラックバック
[夕食, 料理] ローストポーク
純麦入りご飯
ローストポーク
ブロッコリーとポテト
おくら
みそ汁
投稿者 nekobara : 20:10 | コメント (0) | トラックバック
[休肝日] NONDRINKING
今週2日目
投稿者 nekobara : 20:07 | コメント (0) | トラックバック
[予定] 1月25日の行動
■午前
・事務処理
■午後
・pptp接続(再挑戦)
・挿入行先頭入力欄へのフォーカス移動(JavaScript)
・テーブル設計
投稿者 nekobara : 09:24 | コメント (0) | トラックバック
[運動] 本日の体操
朝:腰痛予防体操 2セット、懸垂35、スクワット50
夜:腰痛予防体操 2セット、ストレッチ、腹筋36、懸垂35、スクワット50
体重 64.8kg 体脂肪率 16%
投稿者 nekobara : 09:23 | コメント (0) | トラックバック
2006年01月24日
[料理] あじの開き
純麦入りごはん
あじの開き
チキンナゲット(冷凍チ~ン!)
めかぶときゅうり
みそ汁
投稿者 nekobara : 21:08 | コメント (0) | トラックバック
[休肝日] NONDRINKING
今週最初の休肝日
投稿者 nekobara : 21:05 | コメント (0) | トラックバック
[予定] 1月24日の行動
■午前
・pptp接続
・P登録機能
■午後
・P登録機能
・歯医者
投稿者 nekobara : 08:27 | コメント (0) | トラックバック
[運動] 本日の体操
朝:腰痛予防体操 2セット、懸垂35、スクワット50
夜:腰痛予防体操 2セット、ストレッチ、腹筋36、懸垂30、スクワット50
投稿者 nekobara : 08:25 | コメント (0) | トラックバック
2006年01月23日
[夕食, 料理] ローストチキン
純麦入りごはん
ローストチキン
まぐろやまかけ
厚揚げ豆腐
なめこ汁
投稿者 nekobara : 20:18 | コメント (0) | トラックバック
[その他] 氷壁 (第二回)
氷壁の第2回放送も見てしまいました。その日は勝沼の大善寺で、山梨県山岳連盟の新年会だったんですが、宴会場の広間にテレビがあったので、数人でごろごろしながら、見ました。
前回以上に?なところ満載でしたが、やっぱり一番気になったのは、鶴田真由の眉間のシワでした。(^^)
ドラマの中で主人公の奥寺(玉木宏)がダブルアックスで雪壁を登っていくわけですが、見ていたらなんか、この登るという行為というか、動作が俺は好きなんだなぁと、改めて実感しました。(そうバカと煙はなんちゃらです)
今はクライミングジムでも登っていないくせに、すごい昔に少しだけ経験のあるアイスクライミングや沢登そしてマルチピッチのクライミングをまたやってみたいなぁという気持ちが芽生えてきたしまいました。マルチピッチ系のアルパインクライミングは、精神的な面でも体力的な面でも、自分には向いていないとかつてはあきらめたのにテレビを見て影響をうけるなんて、単細胞すぎです。>自分
そのときは、テレビだけでなくて、H鳳会のUさんに去年行った中国で撮ってきた美しくて、標高差が1000mはあるような壁の写真をいろいろ見せられて、こんな未登の壁がごろごろしているから、登りに行こうと言われて、酔っていたからでしょうか、久しぶりにすごく興奮してしまいました。
投稿者 nekobara : 08:40 | コメント (0) | トラックバック
[予定] 1月23日の行動
■午前
・検索ボックス(JavaScript)
■午後
・AI社
投稿者 nekobara : 08:39 | コメント (0) | トラックバック
[運動] 本日の体操
朝:腰痛予防体操 2セット、懸垂30
夜:腰痛予防体操 2セット、腹筋35、懸垂35、スクワット50
投稿者 nekobara : 08:37 | コメント (0) | トラックバック
2006年01月20日
[読書] プログラミング Perl Vol.1
| プログラミングPerl〈VOLUME1〉 | |
![]() | ラリー ウォール ジョン オーワント トム クリスチャンセン おすすめ平均 ![]() CGIを自在にこなす第一歩の書 Perl文法の仕組みを詳細に知りたい人の本 ラクダが踊る Perlのバイブル! A good reference into chaos.Amazonで詳しく見る by G-Tools |
Perlを使いはじめて、6年くらいになるがまともにPerlの本を読み通したことがなかった。プログラムの記述法がC言語に近いこともあり、わからないことがあった場合にその都度、参照するというやり方でごまかしてきた。
というのも、ここ6年の間にDelphi、SQLを新規に憶えて、それでシステムを構築したり、VBAでちょこっとしたツールを作ったり、COBOLのコードをちょっとだけ読んだりと、ひとつの言語だけにじっくり向き合う余裕がなかったからだ。
しかし、あと3年はPerlで行くことにしているのでここで一度一通りPerl本を読んでおいてほうがいいだろうということで、本家本元のプログラミングPerlを暇を見つけては読んでいた。もちろん、この本だけを読んでいたわけではなくて、必要に応じて、JavaScript、PostgreSQL、XML、CSSの本なども読んでいるので、なかなか目を通し終われないでいた。
プログラミングPerl(通称ラクダ本)は、Vol1、Vol2の全2巻で、Vol1が640ページ、Vol2が595ページ、合計1235ページの大著だ。年末にやっとVol1に目を通すことができた。
で、痛感したのが、あぁ俺ってPerlの50%も使いこなせていないんだなぁという現実。つくづく1つのことをとことん深くまで突き詰めることができない弱さを思い知ってしまった。(taint modeなんて知らなかったよ)
まぁ、でも、ここで反省ばかりしていても進歩無いので、めげないで引き続きVol2を読み進めている今日この頃・・・・・
でも、RubyやPaythonそして、Haskell、そして、emacs-lispもやってみたいなぁという、この節操の無さは何なんでしょう。
PS. ちなみに、この読書カテゴリって、書評じゃないから
投稿者 nekobara : 23:38 | コメント (0) | トラックバック
[読書] 月の輪書林それから
| 月の輪書林それから | |
![]() | 高橋 徹 晶文社 2005-10 売り上げランキング : Amazonで詳しく見る by G-Tools |
去年、図書館に技術書を返却しに行ったときに借りてしまった本。今は技術書以外の読書を我慢しているが、この本の装丁を見たらついつい手が伸びていた。
読んでみると古本屋を営む著者の日記を本にしたものだった。この手のものは初めてだったので、ちょっと新鮮だった。古本屋さんというとお店に本を並べて売っているだけとのイメージしかなかったが、これは大きな間違いで、私が古本屋業界のことを知らなさ過ぎらしい。
著者は満州というテーマで古本を収集し、目録を作成していることがわかり、古本屋さんってこういうことをするんだということに驚いたが、あまりにも業界事情に疎いために、その目録をどんな人が手に入れ、どのようにして、掲載されている本を買うのかが具体的にイメージできなかった。
なんとなく古本屋さんの日常がつかめたけど、結局はよくわからないというモヤモヤ感もなきにしもあらずだが、この世界もかなり深そうなので、現時点では深入りはしないでおこうというのが結論。<これもよくわからん(^^
投稿者 nekobara : 22:57 | コメント (4) | トラックバック
[夕食, 料理] 鶏肉マヨチーズ
純麦入りごはん
鶏肉マヨチーズ
トマト
シチュー
投稿者 nekobara : 21:03 | コメント (0) | トラックバック
[予定] 1月20日の行動
■午前
・病院
■午後
・AI社
投稿者 nekobara : 11:57 | コメント (0) | トラックバック
2006年01月19日
[予定] 1月19日の行動
■午前
・固定IP申請
・Pデータ登録画面
■午後
・Pデータ登録画面
・AI社
投稿者 nekobara : 09:12 | コメント (0) | トラックバック
[運動] 本日の体操
朝:腰痛予防体操 2セット、懸垂30
投稿者 nekobara : 09:11 | コメント (0) | トラックバック
2006年01月18日
[休肝日] NONDRINKING
今週2日目
投稿者 nekobara : 22:28 | コメント (0) | トラックバック
[夕食, 料理] カレイの煮付け
ごはん
カレイの煮付け
もずく酢
みそ汁
投稿者 nekobara : 22:21 | コメント (0) | トラックバック
[その他] 新年会
先週の金曜日、昨日火曜日と新年会で、たらふく食べて、そして、しこたま飲んだ。
とにかく、新年会が楽しくてしょうがいない。(^^)
先週の金曜日は、同じ業界で同世代の6人での飲み会だったので
共通の話題が多く、同級生感覚でちょっとおバカな行動したりして
非常にリラックスして、お酒を飲んだ。
昨日は創業塾の講師だった白倉先生の関係者での新年会で
3分の1ぐらいはかつて一緒に講義に参加した人達で近況報告を
しあったりと話が弾んだ。残りは今回はじめて顔を合わせる人達
だったがいろんな方がいらっしゃるので、いろいろ刺激を受け、
これまた、良い出会いだった。
土曜日には新年会第3弾で、山岳会関係の飲み会。若いときに
世話になった人達なので、20年以上の付き合いだ。本格的な
山に行かなくなって久しい私なので、宴会への参加も2,3年に
一回というペースだが、今でも現役の先輩たちはいつも暖かく
相手をしてくれる。これも今から楽しみだ。
投稿者 nekobara : 13:14 | コメント (0) | トラックバック
[予定] 1月18日の行動
■午前
・MovableTypeのスパムコメント対策
■午後
・Pデータ登録画面
投稿者 nekobara : 13:13 | コメント (0) | トラックバック
[運動] 本日の体操
朝:腰痛予防体操 2セット、懸垂30
夜:腰痛予防体操 2セット、ストレッチ、腹筋30、懸垂33
投稿者 nekobara : 13:11 | コメント (0) | トラックバック
2006年01月17日
[予定] 1月17日の行動
■午前
・固定IP検討
・システム仕様
■午後
・AI社
■夜
・S先生関連新年会
投稿者 nekobara : 10:52 | コメント (0) | トラックバック
[運動] 本日の体操
朝:腰痛予防体操 2セット、懸垂30
投稿者 nekobara : 10:51 | コメント (0) | トラックバック
2006年01月16日
[その他] サンボマスター

http://return0.dyndns.org/t/smg/
投稿者 nekobara : 23:21 | コメント (0) | トラックバック
[その他] 氷壁
あまりテレビドラマは見ない(ただし、本を読んでいる横で妻が見ている韓国ドラマは途切れ途切れにみていたりする)のですが、一応、山登りを趣味としてきたので、見てみました。
井上靖の原作は学生の時に読みましたが、例によってラストを憶えていない:-( ナイロンザイルの結末は憶えているのだが、その後、主人公が山に入ってどうなったのかがあいまいなままです。本棚を探してみたが、もう持っていなかったので、確かめることができていません。
で、ドラマのほうですが、よくあることですがドラマなどは大げさに演出するので、実際にやっている人からするとこんなのないよなぁ~というところは当然ありましたが、まあドラマなので、ある程度は仕方ないことだと思うので、ここでは特に突っ込みません。
で、懐かしかったのが、ドラマ上では、屏風岩となっていた岩場は、都留の三つ峠でした。もう、あの岩肌を見た瞬間、おお懐かしいって感じです。なんと言っても、私が初めて、岩登りをしたのが三つ峠でした。二人だけでいけるほど技術も知識もないのに同級生と登りに行き、今思えば「結構やばかったよなぁ、一歩間違えば事故ってたよ」という感じで、若気の至りでした。
で、主人公の奥寺(玉木宏)がフリーソロで登っていたところが大根オロシか、紅葉オロシか、それとも、別のルートかなぁと考えたり、事故シーンは三段ハング?と思いながら見ていて、楽しめました。ちなみに、大根オロシは昔、ガチャピンも登っていました。
あと気になったのが、鶴田真由の眉間のしわ・・・ 悪女っぽい役なんですがどうしても気になってしまった。いずれにしても、次回も見ちゃいそうです。
投稿者 nekobara : 22:31 | コメント (6) | トラックバック
[その他] どんど焼き

(古いケータイのカメラなのでなんだかよくわかりませんね)
日曜日に地域のどんど焼きがあったので、妻の実家に作ってもらったお団子を木の枝の先につけたものをもって、子供と行ってきました。
北海道のしかも新興住宅街で少年時代を過ごしたので、近所ではどんど焼きという習慣がなかった。(あったとしても、北海道の真冬の夜に外でのイベントに参加する気になれんが・・・)
田舎の風習なんでしょうが、こういうのいいですね。こういうことは、いつまでも変わらないで続けて行きたいものです。
投稿者 nekobara : 22:16 | コメント (3) | トラックバック
[休肝日] NONDRINKING
今週初日
投稿者 nekobara : 21:56 | コメント (0) | トラックバック
[夕食, 料理] 豚肉一口ソテー
純麦入りごはん
豚肉一口ソテー
お惣菜コロッケ
サラダ
みそ汁
久しぶりの料理、たれをつけて肉をフライパンで焼いていると時に
電話に出てしまい、たれを焦がして、焦げ臭くしてしまった;-(
投稿者 nekobara : 21:51 | コメント (2) | トラックバック
[予定] 1月16日の行動
■午前
・U社ウェブサイト調整
・U社
■午後
・VPN調査
・システム仕様
投稿者 nekobara : 08:19 | コメント (0) | トラックバック
[運動] 本日の体操
朝:腰痛予防体操 2セット、懸垂30
夜:腰痛予防体操 2セット、腹筋35、懸垂27
体重 65.0kg 体脂肪率 17%
投稿者 nekobara : 08:18 | コメント (2) | トラックバック
2006年01月15日
[休肝日] NONDRINKING
なんとか、2日目投稿者 nekobara : 20:11 | コメント (0) | トラックバック
2006年01月14日
[技術] Escape Html Between Escpre Tag (MTプラグイン)
【Escape Html Between Escpre Tag】 MovableTypeのテキストフォーマットプラグイン
■概要
MovableTypeでエントリ投稿時に<escpre>~</escpre>に囲まれた範囲の< > " &を&lt; &gt; &quto; &amp;に変換し、さらに<escape> </escape>を<pre> </pre>に変換します。つまり、HTMLのソースを載せたいときに、HTMLのソースを<escpre></escpre>で囲めば、HTMLのタグを表示させることができます。
■使用法
MovaleTypeのエントリー投稿画面のテキストフォーマット欄をEscape Html Between EscPreにします。そして、HTMLのソースをそのまま表示したい範囲を<escape> </escape>タグで囲んでから、保存ボタンをクリックします。ちなみに<escape> </escape>以外の部分は、Convert Line Breaksと同じ変換が適用されます。
<escape> <html> <head></head> <body> <h2>hogehoge</h2> </body> </html> </escape>
と入力すれば以下のように表示されます。
<html> <head></head> <body> <h2>hogehoge</h2> </body> </html>
実際のHTMLは以下のようになっています
<pre> <html> <head></head> <body> <h2>hogehoge</h2> </body> </html> </pre>
■インストール方法
以下のソースコードをmt/pluginsにコピーしてください。
ファイル名 escape_html_between_escpre.pl
投稿者 nekobara : 16:46 | コメント (0) | トラックバック
2006年01月13日
[予定] 1月13日の行動
■午前
・MTプラグイン作成
■午後
・U社ウェブ作成
■夜
・県内ITおやじの会新年会
投稿者 nekobara : 08:23 | コメント (0) | トラックバック
[運動] 本日の体操
朝:腰痛予防体操 2セット、懸垂30
投稿者 nekobara : 08:17 | コメント (0) | トラックバック
2006年01月12日
[雑感] 電子レンジ
年末に電子レンジが壊れた。独身時代、会社の寮をでてアパートで一人暮らしをするときに購入したものなので、かれこれ13,4年前に買ったものだ。
この電子レンジは川崎のダイクマかダイオーで購入した。マルマン製で温めと解凍の2モードとタイマーだけの単機能製品で、1万円ぐらいだった。
代金を支払うためにレジに並び、自分の番が来たときに不意に後ろから、「電子レンジか、いいなぁ、俺もいつかは買いたいなぁ」と若い兄ちゃんの声が聞こえてきた。
赤の他人にこうやってふざけて絡んでくる奴っているよなぁと思いながら、振り向くとわりとかっこいい感じの若者が、トースターを抱えて立っていた。そして、隣にはかなり可愛い女の子が微笑んでいた。
「可愛い彼女と一緒にトースター買うほうが、よっぽどうらやましいわい」と小言でつぶやきながら、店を後にした。
ほんとにどうでも良いことを憶えているもんだが、今ごろのあの二人はどうしたのかなぁ・・・・・
投稿者 nekobara : 21:27 | コメント (1) | トラックバック
[予定] 1月12日の行動
■午前
・U社ウェブ作成
■午後
・U社ウェブ作成
投稿者 nekobara : 09:52 | コメント (0) | トラックバック
[運動] 本日の体操
朝:腰痛予防体操 2セット、懸垂30
投稿者 nekobara : 09:52 | コメント (0) | トラックバック
2006年01月11日
[休肝日] NONDRINKING
今週初日
投稿者 nekobara : 21:29 | コメント (0) | トラックバック
[運動] 本日の体操
夜:腰痛予防体操 2セット、ストレッチ、腹筋30、懸垂30
体重 64.6kg 体脂肪率 17%
う~ん、久しぶりに計ってみたら、予想以上に体重増・・
投稿者 nekobara : 21:23 | コメント (0) | トラックバック
[予定] 1月11日の行動
■午前
・PDF生成機能
■午後
・AI社
投稿者 nekobara : 08:11 | コメント (0) | トラックバック
2006年01月10日
[予定] 1月10日の行動
■午前
・AI社
■午後
・AI社
投稿者 nekobara : 08:54 | コメント (0) | トラックバック
[運動] 本日の体操
朝:腰痛予防体操 2セット、懸垂30
投稿者 nekobara : 08:52 | コメント (0) | トラックバック
2006年01月07日
[休肝日] NONDRINKING
今週、2日目
投稿者 nekobara : 19:44 | コメント (0) | トラックバック
[予定] 1月7日の行動
■午前
・PDF生成機能作成
■夜
・PDF生成機能作成
投稿者 nekobara : 10:47 | コメント (0) | トラックバック
[運動] 本日の体操
朝:腰痛予防体操 2セット、懸垂30
夜:腰痛予防体操 2セット、ストレッチ、腹筋35、懸垂35
投稿者 nekobara : 10:46 | コメント (0) | トラックバック
2006年01月06日
[予定] 1月6日の行動
■午前
・入力チェックライブラリの調査・修正
■午後
・PDF生成サンプルPG作成
投稿者 nekobara : 09:54 | コメント (0) | トラックバック
[運動] 本日の体操
朝:腰痛予防体操 2セット、懸垂20、懸垂25
投稿者 nekobara : 09:53 | コメント (0) | トラックバック
2006年01月05日
[休肝日] NONDRINKING
今年、最初の休肝日。
年末年始気分から、
通常モードへ徐々に移行。
投稿者 nekobara : 22:06 | コメント (1) | トラックバック
[予定] 1月5日の行動
■午前
・システム仕様
■午後
・PDF調査
・AI社
投稿者 nekobara : 10:50 | コメント (0) | トラックバック
[運動] 本日の体操
完全に体がなまっている。今日から、調整開始。
朝:腰痛予防体操 2セット、懸垂30
夜:腰痛予防体操 2セット、ストレッチ、スクワット30、懸垂30
投稿者 nekobara : 10:49 | コメント (0) | トラックバック
2006年01月04日
[予定] 1月4日の行動
■午前
・PDF調査
■午後
・AI社
投稿者 nekobara : 10:14 | コメント (0) | トラックバック
2006年01月02日
[技術] 新春、初プログラミング
最近、ウェブページのレイアウトをCSSで指定することが多い。自分でデザインしたページの場合は、XHTMLのclassやidの構成を
把握しているので、あまり問題はないが、MovableTypeなどのブログ
のレイアウトを変更するときに、XHTMLを見て、特定のclassやidの
範囲を把握するのは、非常に手間がかかる。
そこで、もう少し全体の構造が把握できるようにXHTMLを構造を
簡単に表示するツールを作成してみた。使い方は簡単で、構造を
知りたいウェブページのurlを入力して、ボタンをクリックすれば
構造をインデントして、表示する。
数字は、タグのネストの深さ
数字の次はタグもしくはテキスト(テキストは[ ]で囲んで表示)
ドットの後はclass名、#の後はid名
例)_________4 div.comments #comment-45
HTML木構造表示ツールはこちら
ちなみにPerlのコードは以下の通り。
#!/usr/bin/perl
use warnings;
use strict;
use CGI;
use LWP::Simple;
use HTML::Tree;
my $q = CGI->new;
my $url = $q->param('url');
print_error() unless ($url);
my $content = get($url);
print_error() unless ($content);
my $tree = HTML::TreeBuilder->new_from_content($content);
my $root = $tree->elementify();
my $meta = get_meta($root);
print "Content-type: text/html\n\n";
print <<EOF;
<html>
<head>
<title>$url</title>
$meta
</head>
<body>
<h2>$url</h2>
<pre>
EOF
rendering_tree($root, 1);
print <<EOF;
</pre>
</body>
</html>
EOF
sub rendering_tree {
my ($node, $level) = @_;
if (ref $node){
indent($level);
print "$level ";
print $node->tag();
my $class = $node->attr('class');
print ".$class" if $class;
my $id = $node->attr('id');
print " \#$id" if $id;
print "\n";
my @children = $node->content_list();
foreach (@children) {
rendering_tree($_, $level+1);
}
}elsif ($node ne ' ') {
indent($level);
print "$level [";
print $node."]\n";
}
}
sub indent {
my $level = shift;
for (my $i = 0; $i < $level; $i++) {
print "__";
}
}
sub get_meta {
my $root = shift;
my @metas = $root->find('meta');
foreach (@metas) {
if (lc($_->attr('http-equiv')) eq 'content-type'){
return $_->as_HTML();
}
}
}
sub print_error {
print "Content-type: text/html\n\n";
print <<EOF;
<html>
<head>
</head>
<body>
<h2>url is empty or invalid</h2>
</body>
</html>
EOF
exit;
}


人生の転換点に読んでもらいたい
賛否両論
今の私には必要の無い本でした。

CGIを自在にこなす第一歩の書