2014-09-01から1ヶ月間の記事一覧

文字コードがUTF-8のCSVファイルを読み込む

絶対忘れるので書いておく。まず、pythonでcsvを読み込むには、csv.reader() を使う。 これは、1行分のデータが配列になって帰ってくるものなので、項目の何番目は何の項目、ってのを自分でわかっている必要がある。次に、csvファイルの先頭行をヘッダとして…

開発サーバでTaskQueueする際の注意点

GAE

参考: http://knightso.hateblo.jp/entry/2014/06/10/080720開発サーバ上でのtaskqueueにおいては、queue.yamlに設定したrateの設定は無視される。 たとえば5分おきに実行させたいと思って、rate: 20/h とやっても、開発サーバ上ではwaitせず連続して処理…

appengine_config.pyに、PYTHONPATHを切る

GAE

サードパーティ製のPythonライブラリを使おうと思った時、うまくimportできるものとそうでないものがある。importできない原因の1つに、ライブラリ自身が依存している他パッケージをimportする際に、そのパッケージにPYTHONPATHが通っていること前提になっ…

Modelのプロパティのデータ型が違うと、こうなる

GAE

先日、こんなトラブルがあった。 bulkloaderにて、とあるデータを取り込む。 開発コンソールの Datastore Viewer で中身を確認。ちゃんと入ってる。 自分のプログラムから、そのデータをクエリで取得すると、特定のプロパティだけ、どのレコードも常に値が N…

テスト中にてっとり早くdatastoreの中身をクリアする方法

GAE

ローカル開発サーバで開発・テスト中に、あるカインドの全エンティティを削除したい場合、ローカル開発サーバの管理コンソールの Interactive Console を使うと良い。(http://localhost:ポート番号/console) from google.appengine.ext import ndb from 場…

ゼロ埋め方法いろいろ

いつも忘れるので備忘。 数値のゼロ埋め方法。 val = 123 #推奨 "{0:0>5}".format(val) #古い方法 "%05d" % val #いったん文字列にする str(val).zfill(5) #いったん文字列にする。埋め草を指定できる str(val).rjust(5, "0")

GAEでREST的なGETを行う−URLルーティング方法2種

GAE

たとえば、検索条件に従って検索を行うhogeというページがあったとすると、検索条件をサーバ側に送信する方法には次のようなものがあるだろう。 方法1 GETメソッドで、URLにパラメータを付与する。 http://サーバアドレス/hoge?param1=xxxx&param2=yyyy&par…