Python で simpleXML ライク。

SimpleXML は、PHP で XML を簡単に扱うためのモジュールで、XML のデータを PHP の連想配列などのデータ型で扱うことができます。Python でも、XML データを辞書(dict,dictionary)型やリスト(list)型で扱えたら便利です。次に掲げるページでも、SimpleXML …

Python:re.findall, HTMLから文字列を抽出するのに便利。

HTMLから文字列を抽出するときに、re モジュールの findall() を使うと便利ですね。特にリンク文字列を抽出したいときに重宝しています。 例えば、次のようなリスト要素の中に A要素が入っている場合。 <li><span class="span"><a href="#%E3%82%A2%E3%82%AB%E3%83%9A%E3%83%A9">アカペラ</a></span></li> 次のように括弧で抽出したい部分を指定すると…

東京電力管内の電力の需給状況

東京電力管内の電力の需給状況を調べるページを作成しました。1時間ごとの電力消費量と供給量をグラフと表で表示しますhttp://netarrows.appspot.com/power ■ 表示サンプル [この2つの画像は、自由に転載して結構です。ぜひ紹介して下さい。この夏の電力対…

Google App Engine Python: リソースパスを引数のように webapp で処理する。

WEBサービスの API のリクエストURL などでは、リソースパス部分を読み取ってサーバー側で処理を分岐していると思われるものがあります。例えば、Twitter の API で、ユーザー名 bob の friend のタイムラインを取得するには、次のようなリクエストURLを用い…

Google App Engine Python: memcache と template でコンテンツを変化させる。

前3回に渡って「スケジュール、キャッシュ、テンプレートによる効率的更新」という記事を掲載した。それは、cron によって定期的にコンテンツを更新しようというものだった。ニーズがあるかはわからないが、決められたコンテンツの中から選んで表示する場合…

Google App Engine Python:スケジュール、キャッシュ、テンプレートによる効率的更新(3)。- memcache,template

前々回は、スクリプトを指定した時間に起動できるスケジュール・タスクを実現するための「cron.yaml」の記述方法について、前回は、そのスケジュールにしたがって実行されるスクリプトによって、外部から取得したデータを加工したうえで、キャッシュに保存す…

Google App Engine Python:スケジュール、キャッシュ、テンプレートによる効率的更新(2)。- memcache

前回は、スクリプトを指定した時間に起動できるスケジュール・タスクを実現するための「cron.yaml」の記述方法について説明した。今回は、そのスケジュールにしたがって実行されるスクリプトで、外部から取得したデータを加工したうえで、キャッシュに保存す…

Google App Engine Python:スケジュール、キャッシュ、テンプレートによる効率的更新(1)。- cron.yaml

Google App Engine は、アプリケーションを決まった時刻に起動できるサービス「cron」を使用したスケジュール・タスクを提供する。 また、Google App Engine には、メモリ・オブジェクト・キャッシュ・システム「memchace」で、データをキャッシュできる仕組…

Python:xml.etree.ElementTree, 外部 RDF。

前回は、ローカルな RDFファイルの item 要素から title を取り出した。 今回は、外部の RDF を扱ってみる。前回のソースコードで変えたのは次の部分。 rootTree=etree.parse(source) parse メソッドは、内部のファイルを取り込めるが、外部ファイルは取り込…

Python:xml.etree.ElementTree, RDF titleの取得

前回の記事で、xml.etree.ElementTree モジュールを利用する際には、パス指定の名前空間部分が必要とわかったので、今回は、ローカルな RDFファイルから item 要素から title を取り出してみる。rootTree.findtext('.//{http://purl.org/rss/1.0/}title') if…

Python:xml.etree.ElementTree

RDF からデータを取り出したいと思い、はじめて xml.etree.ElementTree モジュールを利用しました。ハマったのは、パス指定の名前空間部分。 参考にしたコードサンプルでは「.//タグ名」で子孫の要素を参照できると書いてあった。そこで、title のテキストを…

Google App Engine:ファイルの読み込み

Google App Engine のスタートガイドでは、「静的ファイルの使用」について説明がありますが、これ以外の方法でも、静的ファイルを表示する方法があります。それは、スクリプト内でファイルを読み込んで書き出す方法です。これには、組み込み関数の open() …

Google App Engine:環境変数 HTTP_REFERER などを取得する。

os モジュールをインポートすると、環境変数が扱えます。 環境変数は、os.environ にマップ・オブジェクトとして格納されます。また、os.getenv() メソッドは、第一引数に環境変数の名前を指定して、その値を取得できます。第二引数を指定すると、該当する環…

Google App Engine:データストアに保存したテンプレートを使う。

Google App Engine のテンプレート・モジュールは、google.appengine.ext.webapp パッケージからインポートし、rendar() メソッドで、テンプレート・ファイルのパスとテンプレート・データを指定して実行するものです。これはこれで、非常に簡潔で便利なもの…

Google App Engine:django.template を使う。

App Engine Python 環境には、Django 0.9.6 が付属しています。django.template をインポートするだけで、利用できるかと思いましたが、そうではありませんでした。色々試してみましたが、django.conf をインポートして、設定を書き込んだところ、うまくいき…

Google App Engine:データストアに保存した JavaScript を利用する。

スタートガイドには、静的ファイルで利用する方法が紹介されていました。けれども、スクリプトを頻繁に変更する場合、いちいち Google App Engine にアップロードしなければならないのは面倒ではないでしょうか?そこで、スクリプトの内容をデータストアに保…

Google App Engine:データストアに保存した CSS を利用する。

スタートガイドには、外部スタイルシートを静的ファイルで利用する方法が紹介されていました。けれども、スタイルシートを頻繁に変更する場合、いちいち Google App Engine にアップロードしなければならないのは面倒ではないでしょうか?そこで、スタイルシ…

Google App Engine:正規表現を使う

Python では、正規表現を利用する場合、re モジュールをインポートする。 Google App Engine でも同じだろう。 import os Python Japan User's Group の「正規表現を使う」のページを読んでみると、Python で正規表現を使うには、2つの方法があるらしい。1…

Google App Engine:import os って何?

Google App Engine のスタートガイドの「テンプレートの使用」で紹介されているソースコードの先頭には、「import os」と記述されている。これって何のためのものだろう? http://code.google.com/intl/ja/appengine/docs/python/gettingstarted/templates.ht…

Google App Engine:import cgi って何?

Google App Engine のスタートガイドの「webapp を使ったフォームの操作」で紹介されているソースコードの先頭には、「import cgi」と記述されている。これって何のためのものだろう? http://code.google.com/intl/ja/appengine/docs/python/gettingstarted/…

Google App Engine でサイト管理用のページを作成

app.yaml を使用した管理者アクセス Google App Engine でサイト管理用の領域を設定するには、app.yaml で定義すると簡単です。 サンプルコード app.yaml application: netarrows version: 1 runtime: python api_version: 1 handlers: - url: /admin/.* scr…

Google App Engine でクエリ・ストリングを取得する。

クエリ・ストリング(query string)を取得するには、リクエスト・ハンドラ(request handler)の get()メソッド(method)を利用すればよい。例えば、http://example.appspot.com/entry=test というリクエストがあった場合、'/'へのリクエストを'MainPage'ハンド…

はじめまして寝太郎です。

はてなダイアリーは、前から気になってはいたのですが、別のブログサービスで JavaScript 中心の記事を書いていたので、二股は難しいだろうと思い、利用をためらっていました。しかし、最近スポーツナビプラスに、サッカー中心のブログを開設して記事を書い…