爬虫類嫌いのPython日記

爬虫類が大の苦手の筆者が、Pythonに挑戦。他にも、RubyやObjective-C、Google Appengine、Herokuなど色々とチャレンジしています。

GoogleAppEngine から Yahoo形態素解析を利用する

GoogleAppEngineからYahoo形態素解析サービスを利用する関数を書いてみました。 # Yahoo形態素解析に文字列を投げ、結果を取得する # # Yahoo形態素解析のリクエストパラメータ # appid : 事前に取得したAPIキー # sentence : 形態素解析の対象となる文字列 …

bulkloadでCSVファイルを一括アップロード

app.yamlの編集 app.yamlに、以下のディレクティブを追記します。 builtins: - remote_api: on追記したら、デプロイします。 bulkloaderの設定 デプロイした設定を基に、bulkloader.yamlを自動生成します。 appcfg.py create_bulkloader_config <your application path> --filename=</your>…

IS03でアプリ開発

androidアプリを開発する立場にありながら、ようやく初めてのスマートフォンをゲットしました。 auのandroid携帯のIS03です。 発売日にゲットしていたものの、色々と遊んでいたので、今日から本気で開発です。 USBでeclipseと接続するのに苦労したので、メモ…

グレースケールのアルゴリズム

Androidでカメラを操作するプログラムを作っていた際に、画像のグレースケールについて調べてみました。 色々な手法があるようですが、大体、以下の3つが使われることが多いようです。 彩度を下げる 各ピクセルの彩度を0に設定する方法です。 単純にグレース…

CEATECH Japanに行って来た

はるばる、幕張メッセで開催中の「CTECH Japan」に行って来ました。 懐かしい人との再会があったり、最新技術に感心しきりだったり、とても楽しかったです。 その中でも、目立っていたのがAndroid端末の注目の高さですね。 auのAndroid携帯「IS03」は、端末…

AndroidでProgressDialogを表示する

プログレスバーを表示する package com.example.progresstest; import android.app.Activity; import android.app.ProgressDialog; import android.content.DialogInterface; import android.os.Bundle; import android.os.Handler; import android.os.Messa…

AndroidでAlertDialogを表示する

OKボタンのみのダイアログを表示する package com.example.dialogtest; import android.app.Activity; import android.app.AlertDialog; import android.content.DialogInterface; import android.os.Bundle; import android.view.View; import android.view…

Androidアクティビティのライフサイクル

Androidのアクティビティは、基本的に以下の3種類の状態を取ります。 状態がアクティブまたは実行中のアクティビティは、画面のフォアグラウンドに表示されているアクティビティです。これが、ユーザーのアクションのフォーカスとなっているアクティビティで…

Androidアプリ開発環境の設定

Eclipseのダウンロード eclipseダウンロード 上記ページより、Eclipseをダウンロードします。 2010年9月8日現在、最新版はEclipse3.6heliosがリリースされていますが、プラグインの関係で3.5Galileoを推奨します。 Eclipseは「Eclipse IDE for Java Develope…

PythonでGET/POST送信

PythonでGETやPOST送信してみました。 POST送信 import urllib import urllib2 url = 'http://example.com/' params = {'hoge' : 'hogehoge', 'fuga' : 'fugafuga'} params = urllib.urlencode(params) req = urllib2.Request(url) # ヘッダ追加 req.add_hea…

Pythonの変数における共有リファレンス

O'REILLY社の「初めてのPython」6章より。 変数について Pythonでは、C言語やJavaなどスタティックな型付けのコンパイラ言語とは違い、変数の作成時に型宣言をする必要がありません。これは、Pythonでは型情報はオブジェクトが持ち、変数はオブジェクトへの…

EC-CUBEのソースを見てみた

PHP

近々、仕事で触る事になりそうなので、事前にソースを見てみましたが…… やっぱり、PHPなので、スパゲッティですね。 まぁ、同じECアプリの「osCommerce」や「ZenCart」に比べたら、遥かにマシです。 国産初のECアプリのオープンソースとして注目はしていたん…

インプットとアウトプット

技術者にとって、アウトプットは、大切な事だと思います。 ブログなどでアウトプットをする事が恥ずかしいと思っている人も多いようですが、意外に、誰も気に止めていないものです。有名人にでもならない限り、大丈夫ですから…… 恥ずかしがらずに、どんどん…

まずは「FizzBuzz」

新人プログラマさんに「FizzBuzz問題」を挑戦させてみました。 意外と解けないモノなんですけど…… 結構、あっさり解いてくれたので、なかなか有望です。 少しずつ、基本を教えながら、プログラムの面白さを伝えていきたいですね。プログラムって、楽しいモノ…

その発想はなかったぁ

テレビチャンピオンの「小学生料理名人」を観ました。 いやぁ、子供の柔軟な発想から生み出される料理の数々は、どれも驚きのものばかりでした。あの柔軟な発想が羨ましいですね。うちにも、小学生の娘がいますが…… 彼女は、夏休みの自由研究の調べ物を、当…

ユーザーインターフェース論

個人的には、ユーザーインターフェースが変わったら、それに最適なシステムに変更するべきだと考えています。 例えば、和式のトイレで、横に棒みたいなのが出ていて、それを下げると水が流れるトイレ、学校とかに多いですよね? でも、最近では、あのトイレ…

自動改札に思う

今日、出かけた時に、ちょっとしたトラブルがありました。 自分は、A駅からD駅に向かうときにB駅経由で向かうつもりだったのですが…… PASMOを利用していたので、そんなに気にはしていませんでした。 同行していた嫁は、A駅からC駅経由で切符を購入してしまっ…

Pythonコーディング規約

Pythonは、比較的可読性が高いコードを書けると思っています。また、ある程度のレベルに達し、ある程度の常識があれば、誰でも同じようなコードを書く事が出来るのではないかと思っています。 スキがあると、あっと言う間にスパゲッティコードになってしまう…

Google Data APIについて

Google Calendarを触ってみようと思い、色々と調べてみると、どうもGoogle Data APIを使用しているとの事でした。 早速、Google Data APIについて調べてみましたが、意外に日本語ドキュメントが少ない事にビックリしました。まぁ、Googleの他のWebサービスと…

Google Developer Day Japan 2010

すっかり、忘れていたので、今更ながら申し込み。 どうやら、今回はクイズを回答して、その成績で「参加証」が発行されるとの事。 もっと、早くに気付けば良かったです……まぁ、運を天に任せて、チャレンジしてみますか!!今日から、新しい環境で仕事しまし…

新幹線コーディングのまとめ

「お盆で帰省」新幹線コーディング&デバッグや田舎でのコーディングを経験してみて、改めて、開発に必要な環境と言うのがハッキリしてきた気がします。それを、ちょっと書き出してみます。今まで、都会に住んでいて、基本的にノートPCさえあれば、どこでも…

ゆったりとした時の中で

田舎のゆったりした時の流れの中で、しかし着実に街は死につつありました。 子供の頃に過ごした市街地は、子供の姿を見る事もなく、自分の親の世代が中心の高齢化。 若者は、郊外へと追いやられ、その若者を目当てに、郊外に大型ショッピングモールが出店し…

日本人のお盆

久しぶりに、実家に帰省しましたが、相変わらず、時の流れがゆっくりしているように感じます。 お年寄りが多く、騒がしくもない田舎ですから…… この環境で、開発できたら集中できるだろうなと思います。 実際は、久しぶりの帰省で、挨拶回りやら、お墓参りや…

新幹線コーディング結果

無事に帰省しました!!新幹線コーディングの結果ですが、何とか、形になりました。 ネット接続は、上手くいかなかったものの、Google App Engineのローカル開発での開発は順調そのもの。 1つだけバグが出てしまったので、明日以降、修正して公開できればと…

お盆で帰省の新幹線コーディング

明日から、田舎に帰省しますが…… 新幹線のぞみの乗車時間が、約6時間。 いつもなら、爆睡するところですが、今回は、Google App Engineで何か作ってみようかなと思います。 前回、帰省した時、新幹線内で無線LANのテストをしている形跡があったのですが…… す…

不老不死の研究

テレビの「ザ!世界仰天ニュース」で、まだ人類が発見していない遺伝子を持つ子がいると言うのをやっていました。奇跡的な治癒力と老化しない遺伝子らしく、研究すれば病気の治癒や不老不死の可能性もあるらしいです。 「不老不死」は、人類の永遠の夢などと…

GoogleAppEngineのデータストアのまとめ

Google App Engineのデータストア関連のまとめです。 モデルの定義 class クラス名( db.Model ): プロパティ名 = プロパティクラス …… 必要なだけ記述する …… 参考例: class UserData(db.Model): name = db.StringProperty(required=True, multiline=False)…

なかなか慣れない……

Pythonを勉強する前、Rubyをやっていたせいもあるのでしょうが…… インデントで、区切りをつけるPythonの流儀になかなか慣れません。Rubyの場合 def hoge(fuga): ………… ………… ………… end def bar(): ………… ………… ………… end となります。 def〜endまでがワンセットな…

地元の祭り

今日は、地元の商店街でお祭り。 近所では一番大きなお祭りで、御神輿も沢山出て、結構な盛り上がりです。 でも、何で、御神輿を担いだり、祭りに参加すると、ケンカが始まるんでしょう? 良い大人なのに…… 「祭りとケンカは江戸の華」とか言いますけど、江…

Google App Engineでパラメータの受け渡し

Webアプリケーションで値の受け渡しをする場合、HTMLのフォームからPOSTで渡される場合と、URLの後ろに付けて渡されるGETとがあります。 GETの場合 main.pyのMainHandlerクラスの修正 class MainHandler(webapp.RequestHandler): def get(self): flag = bool…