UTF-8を MySQLdbで、Insert などした際に、文字化ける。 utf8ではなく、 charset = 'latin1' でかえってくる。
rikiroku氏が、「強引に直し」ている例があるが、再コンパイルが必要らしく、今回パス。
http://rikima.dip.jp:8081/rikima/rikima-blog/categories/python/cbcategory_view?b_start:int=16
ちなみに、cursor.pyを探すのに苦労したので、メモは残そう。
MySQLdbは、YUMを使ったりした標準的?なインストールでは以下にある。(CenOS5)
"/usr/lib/python2.4/site-packages/MySQLdb/cursors.py
cursor.pyのなかで、たくさん関数があるうちの、この関数
def callproc(self, procname, args=()):
長い英文の説明書きがある・・・・
from types import UnicodeType
db = self._get_db()
元々→ #charset = db.character_set_name()
charset = 'utf-8'
↑↑↑ この個所を変えるらしい。
めんどくさいので、従来方式にする。なんで、pythonとmysqlの両方がutf-8仕様なのにと思うが・・・
python2.5では、これも直っているらしいとも聞くが、2.5入れるのもメンドイので、今回はこれで。
↓このブログが詳しい。
http://blog.livedoor.jp/alisue_seiga/archives/74330.html
my.ini
[mysqld] default-character-set=utf8 character_set_server=utf8 skip-character-set-client-handshake
スクリプトの中
connection = MySQLdb.connect(host=,port=,user=,passwd=,db=,use_unicode=True,charset="utf8")
変数をutf-8でとるようにした
hensu = unicode(hensu, 'utf-8', 'ignore')
SQL文をunicode指定してもよいらしい。(メンドイのでしてないが、変数をutf-8にしてあるのでちゃんと動いた。スクリプトファイル自体も -*= coding: utf-8 -*- にしてある)
cursor.execute(u"INSERT INTO person (name,age) VALUES ('例文',10);")
2008年12月18日木曜日
RED5 設定
(1)コンテンツ流通の制御プログラムを java で作る。
(サンプルをコピって、改造する)
/red5配下の、webapps にそういたものを置く。<<Red5のルール<<configとかで設定はできるらしい(面倒い)
適当にディレクトリをwebapps下につくり、(1)を置く。
ここで、WEB-INFというディレクトリを、適当に作ったディレクトリ下につくる。
その中に、
red5\web.prpperties というテキストのファイルを作成。
webapp.contextPath=/fitcDemo とか、(1)の名称をいれると、パスが通るようになるらしい。
基本的に、これで動く。
LAN上で動かすには、webのサービスをON。
Red5/FMSのデフォルトポート 1935(tcp)が通るようにする。
(サンプルをコピって、改造する)
/red5配下の、webapps にそういたものを置く。<<Red5のルール<<configとかで設定はできるらしい(面倒い)
適当にディレクトリをwebapps下につくり、(1)を置く。
ここで、WEB-INFというディレクトリを、適当に作ったディレクトリ下につくる。
その中に、
red5\web.prpperties というテキストのファイルを作成。
webapp.contextPath=/fitcDemo とか、(1)の名称をいれると、パスが通るようになるらしい。
基本的に、これで動く。
LAN上で動かすには、webのサービスをON。
Red5/FMSのデフォルトポート 1935(tcp)が通るようにする。
2008年12月17日水曜日
RED 5 インストール
1)javaをインストールする。
2)ソフトウェアの追加、削除で次のものをインストールする
subversion
ant
Centosでantがないことがあったが、なぜかyum で対応できた。
Red5でant1.7を要求される。
CentOSのyumは、1.65がインストールされたので苦労した。
このページの方法でOK。http://shrine-bell.seesaa.net/index-2.html
3)google ソースコードからRed5をダウンロードする
別の箇所からのダウンロードにはバグがある、場合がある(実際、動かなかった)
red5をインストールする場所に移動しておき、ダウンロードすると楽。
cd /opt/
svn co http://red5.googlecode.com/svn/java/server/trunk red5
/opt/red5 ディレクトリができいる。
ant prepare
ant dist
cd dist
sh red5.sh &
これでred5サーバーが稼働していたら、完成。
2)ソフトウェアの追加、削除で次のものをインストールする
subversion
ant
Centosでantがないことがあったが、なぜかyum で対応できた。
Red5でant1.7を要求される。
CentOSのyumは、1.65がインストールされたので苦労した。
このページの方法でOK。http://shrine-bell.seesaa.net/index-2.html
3)google ソースコードからRed5をダウンロードする
別の箇所からのダウンロードにはバグがある、場合がある(実際、動かなかった)
red5をインストールする場所に移動しておき、ダウンロードすると楽。
cd /opt/
svn co http://red5.googlecode.com/svn/java/server/trunk red5
/opt/red5 ディレクトリができいる。
ant prepare
ant dist
cd dist
sh red5.sh &
これでred5サーバーが稼働していたら、完成。
JAVAのインストール
JDKをSun micro systemsからダウンロード
http://java.sun.com/javase/downloads/index.jsp
(1.6が最新)<<いまのところ不具合なし RED5も動いた
上から2番めの Downloadを選択
1)システム
celon /pentiumは、linux
2)言語
マルチリンガル意外選べない
3)条件の承諾をチェック
>>continue
インストールするマシンで、自動的にインストールするには、上から2番め、末尾rpm.bin
Java SE Development Kit 6u11
jdk-6u11-linux-i586-rpm.bin
>>ダウンロード
su root で、コマンド
sh ./jdk-6・・・・
自動解凍
インストール先は、/usr/java/jdk1.6.・・・
/etc/profile の末尾に以下、記入
export JAVA_HOME=/usr/java/jdk1.6.0_11
export CLASSPATH=.:/usr/java/jdk1.6.0_11/jre/lib:/usr/java/jdk1.6.0_11lib:/usr/java/jdk1.6.0_11/lib/tools.jar:
端末で、
java -version
前の1.4などの表示のままのはず、次はコマンドにパスを通す。
↓コマンド
alternatives --install /usr/bin/java java /usr/java/jdk1.6.0_11/bin/java 1
デフォルトのリンク↑ ↑実際の場所 ↑順位(数字)
alternatives --config java
新しい方の数字を記入
java -version
1.6 となれば、完成。
http://java.sun.com/javase/downloads/index.jsp
(1.6が最新)<<いまのところ不具合なし RED5も動いた
上から2番めの Downloadを選択
1)システム
celon /pentiumは、linux
2)言語
マルチリンガル意外選べない
3)条件の承諾をチェック
>>continue
インストールするマシンで、自動的にインストールするには、上から2番め、末尾rpm.bin
Java SE Development Kit 6u11
jdk-6u11-linux-i586-rpm.bin
>>ダウンロード
su root で、コマンド
sh ./jdk-6・・・・
自動解凍
インストール先は、/usr/java/jdk1.6.・・・
/etc/profile の末尾に以下、記入
export JAVA_HOME=/usr/java/jdk1.6.0_11
export CLASSPATH=.:/usr/java/jdk1.6.0_11/jre/lib:/usr/java/jdk1.6.0_11lib:/usr/java/jdk1.6.0_11/lib/tools.jar:
端末で、
java -version
前の1.4などの表示のままのはず、次はコマンドにパスを通す。
↓コマンド
alternatives --install /usr/bin/java java /usr/java/jdk1.6.0_11/bin/java 1
デフォルトのリンク↑ ↑実際の場所 ↑順位(数字)
alternatives --config java
新しい方の数字を記入
java -version
1.6 となれば、完成。
登録:
コメント (Atom)
