FutureInsight.info

AI、ビッグデータ、ライフサイエンス、テクノロジービッグプレイヤーの動向、これからの働き方などの「未来」に注目して考察するブログです。

今日やったweb.pyのお勉強

寝る前にちょっとWeb作成のための勉強をしていました。

  • mysqlの使い方

授業でSQLは何度もさわったことがあるので簡単。ただ、設定はちょっと面倒だったけど、いろいろ試すため家のVMware上にも環境を構築しました。でも、ubuntuなのでapt-getでmysqldbとpython-mysqldbをゲットするだけ。makeからのインストールがどれだけ面倒なのかしりませんが、今時、apt-getかrpm以外でインストールするやつって、逆にかなりの上級者なので心配ないのでは?

  • web.pyのインストール、チュートリアル

これはインストールは直下におくだけなので、簡単なのだがレンタルサーバの設定がちょっとめんどいらしい。web.pyはすべてのアクセスをcgiにいったん、リダイレクトする仕様なので、そのように設定しなければならない(と、、、思う)。そのへんはこのへんを参照。

  • CGI環境でweb.pyを動かす

http://d.hatena.ne.jp/y_yanbe/20060311

もし、自サーバでやるならアパッチでcgiの設定してあとは起動するだけ。そのurlにアクセスすれば勝手にうごいてます。

  • で、web.py雑感

なんか、ふつうにcgiを書いてるのと同じ感覚。ようはその人がPythonが使えることが大前提。PloneとかのPython使えなくてもそこそこできるものとは違います。ただ、おれはそういうなにしてるのかわかるのが欲しかったので満足。しかし、チュートリアルを見た限りではDBのサポートが弱いのでは、、、ふつうにmysqlのリクエストを送っているだけですよね。。。ORマッパーはどうした?(ないみたいなので、おとなしくSQLObjectをつかいましょう。)

  • web.py チュートリアル

http://kinneko.googlepages.com/webpy_tutorial_ja

というわけで、web.pyではURLの操作、テンプレートの機能を利用し、DBはSQLObject、RSSはfeedparserを使うことになりそうです。かなり無難っぽい選択かな。

  • そんなわけでローカルで動いたのでさっそくレンタルサーバで

と思ったら、ものすごいところでこけます。import threadでこけました。このレンタルサーバはマルチスレッドを禁止にしているわけじゃなくて、pythonでthreadモジュールを消しているのね、、、これは萎えるね。web.pyソースコードを手直ししようと思って、みてみたらかなり根本的な部分で使っているみたいなので、これはちょっとレンタルサーバでやるのは無理めかな、、、。どうすんべ。

  • 結局

自分のマシンでローカルで開発し、コンテストに応募するときはあちらのサーバを借りようかと思います。なんか面倒な感じもするけど、しょうがないか。というわけで、次のお勉強は、SQLObjectの使い方でしょう。でも、これも標準のORラッパーと同じような感じなので、したのURLのチュートリアルをひととおりやればいいかと思います。

  • SQLObject 0.7

http://www.python.jp/~ymasuda/sqlobject/SQLObject.html

そしたら、いよいよ実装開始です。