2011年2月27日日曜日

need more than 1 value to unpack

大分出来上がった 2channelbuster
batchで .dat ファイルをパースしているのだけど、何かのタイミングで
need more than 1 value to unpack
ってエラーが大量に出てしまう
なんとなく、splitが原因のような気もするけど、眠いのでまた今度調べてみよう

2011/03/03 原因判明

text = u'xxxxxxxxxxxxxxxxxxxxaaaaaaaaaaaaaaaaaa'
(a, b) = re.split('#', text)

上記の様なことをやっていて、splitの結果が b に入らないのが原因だった模様
変なところでうるさい言語だpython

2011年2月24日木曜日

負荷対策

gaeで大体イメージしていたようなものが出来上がった。
バッチ処理が重く、cpuを使いきってしまったので今日は別のurlに避難

http://2dot5channel.appspot.com/
スレッドを立てたオーナーの書き込みのみ抽出と、レスが付いている記事の抽出機能を実装。
なかなか使いやすい(見やすい)感じには成っているかと思う。

明日以降は以前のURLに戻れる予定
どのたか使って感想聞かせてくれると嬉しいです

2011年2月16日水曜日

画像遅延読み込み

無駄にだらだら長いページになってしまい、ただでさえ読み込みに時間がかかってしまう。
そんななか画像まで一気に読み込んでられないので、jquery plugin を利用する。


jquery.ligntbox とバッティングしそうだなー、大丈夫かなー?

cron登録

GAEの場合cronもweb accessの様に作る必要がある。
app.yamlcron.yamlを編集して update して登録する。

バッチもCGIも同様に扱うのは最初抵抗があったが、CGIをバッチにするってことも可能で、これはこれで便利である。
cron実行間隔を短くしすぎると cpu を持っていかれるので注意。cpu使用率を下げるようにmemcacheを使ったり。
何気にGAEで何かしら開発をするとリソース配分の重要性を改めて認識。ザルシステムでは味わえないリソースとの闘い。

2011年2月11日金曜日

2ch


2chのデータを加工して何かを作るサイトを作成
今後色々と弄っていく予定
これを作りながらGAEのイロハが何となく掴めた

連結

coercing to Unicode: need string or buffer, long found
GAEでこんなエラーが出てたのでちょっと調べてみたら、
python って 数値 + 文字列 で勝手に文字列に変換してくれないんだ。
適当そうな言語だけど型だけはうるさいな。

障壁

GAEってファイル出力不可能?
DBのデータを纏めてhtml化しようと思ったら。
これはmemcacheに置くべきななのか悩む

2011年2月9日水曜日

logo generator


無料ロゴジェネレータを幾つか見て作ってみた。
無料と謳っているのはロゴを作るところまでで、DLしようとすると決済画面に飛ぶ様なものばかりであった。
そんな中、一ついい感じのサイトを見つけた。
一個試しに作って無料でDLも完了。
もしかしたら二つ目からは有料になったりして。


htmlコンポーネント化

だらだら長いhtmlは保守性が悪いので、djangoのinclude機能でテンプレートを細分化する。
templates/
 ├page.tpl
 └parts/
  ├header.tpl
  ├footer.tpl
page.tplの中で
{% include 'parts/header.tpl' %}
{% include 'parts/footer.tpl' %}
を呼ぶだけ