uuidを取得するCGI

大量のユニークIDが必要が必要になったときに。RFC 4122で定義されたUUIDを返すCGI。単にPython2.5のuuidモジュールを使っているだけでね。uuid.uuid4()の戻り値です。これでダブらないフシギ。

受け取るパラメータは、count=件数のみ。countは最大1000まで。

戻りは改行で区切られたテキスト。

例)

ローカル環境で動かせばなんてことないけれど、何かあったときのバックアップ用にでも。

#!/usr/bin/env python2.5
import cgi,uuid
__MAX_COUNT=1000
print "Content-type: text/plain\n"
try:
    form = cgi.FieldStorage()
    try:
        count = int(form.getfirst("count",1))
        if count>__MAX_COUNT: count=__MAX_COUNT
    except:
        count = 1
    for i in range(count): print uuid.uuid4()
except Exception,msg:
    print "error occured"
uuidを取得するCGI

バーコード生成器

CODE128バーコード生成CGIを呼び出すためのCGI。例えば連番のバーコードをまとめて印刷したいときに。

入力欄に1行につき1つのコードを入れると、いくつでも(最大4K)バーコードを生成します。今のところCODE128だけですが、CODE39やJANコードもそのうちに。

バーコード生成器

CODE128バーコード生成CGI

CODE128のバーコードを生成します。画像はGIF形式です。

ブラウザから何も考えないで印刷したところ、手元のバーコードリーダではちゃんと読めました。


例1)https://www.fabrice.co.jp/cgi-bin/code128.cgi?code=ABC

は、こういうバーコードを生成します。

例2)https://www.fabrice.co.jp/cgi-bin/code128.cgi?code=https://www.fabrice.co.jp/cgi-bin/

は、こういうバーコードを生成します。

文字列長は最大64文字に制限してあります。

追記

複数のコードをまとめてたくさん作るために、バーコード生成器を追加。

追記 2007.11.7

パラメータに画像フォーマット指定を追加。

CODE128バーコード生成CGI

アルファベット2文字の国コード / iso3166-1 alpha-2

www.iso.orgから2文字コードのテキストファイルなくなっているのに気づきました。
とりあえず手元のキャッシュからテキストファイルを復元して公開しておきます。
https://www.fabrice.co.jp/iso3166-2.txt

必要があって、2文字国コードから国名を返すCGIを作る。

単にプレインテキストでアルファベットの国名を返す。最初のパラメータ(名)が2文字の国コード。

使い方はこんな感じで。

日本 https://www.fabrice.co.jp/cgi-bin/iso3166.cgi?jp

アメリカ https://www.fabrice.co.jp/cgi-bin/iso3166.cgi?us

ブータン https://www.fabrice.co.jp/cgi-bin/iso3166.cgi?BT

ケニヤ https://www.fabrice.co.jp/cgi-bin/iso3166.cgi?KE

元データはキャッシュしているので、国が増えたりしても、2週間ぐらいは反映しないかも。

アルファベット2文字の国コード / iso3166-1 alpha-2

ISBN10桁13桁相互変換CGI

頻繁に使うわけでも、そんなに難しいものでもありませんが、作ろうと思うとちょっと面倒な小道具類シリーズということで。

ISBN10桁13桁相互変換CGI

isbnlib.pyを使ったCGIを公開します。

  1. 入力されたISBNから10桁と13桁を表示します。
  2. GETでもPOSTでも使えます。パラメータ名は「isbn」。
  3. 複数のISBNを渡す場合は空白か改行で区切ってください。
  4. WEBサービスっぽく使ってもらうために、出力はタブ区切りのテキストです。1)入力ISBN 2)10桁 3)13桁

例) 499289323と487367434とエラー

どうぞご利用ください。

ホントはAjaxとかでカッコいいのがやってみたかった。

ISBN10桁13桁相互変換CGI