[表示 : 全て 最新50 1-99 101- 201- 2chのread.cgiへ]
Update time : 05/09 10:45 / Filesize : 38 KB / Number-of Response : 211
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

Python CGI



1 名前:nobodyさん [2006/11/14(火) 23:09:04 ID:KpRkBouP]
PythonでCGI

PyJUG:ドキュメントはここ
www.python.jp/Zope/

Python CGI入門みたいの
www.gesource.jp/programming/python/cgi/index.html

cgiモジュール説明書
www.python.jp/doc/2.4/lib/module-cgi.html

118 名前:nobodyさん mailto:sage [2008/12/15(月) 13:23:12 ID:???]
req.headers['content_type'] = 'text/html'

119 名前:nobodyさん [2008/12/31(水) 00:18:58 ID:FXljk5zO]
python 2.5 の cgi プログラムが動作しません。どのような原因が考えられますでしょうか。

自分で確認した事項等は以下の通りです:
・ ローカルでは動作する
・ パーミッションは755になっている
・ アスキーモードで転送している (バイナリモードでも試してみた)
・ 文字コードは UTF-8 で、プログラム内にも # -*- coding: utf-8 -*- としている
・ import したのは cgi, urllib, re, time
・ cgitb を試みたが、使えていない

120 名前:nobodyさん mailto:sage [2008/12/31(水) 00:24:43 ID:???]
shebang

121 名前:nobodyさん mailto:sage [2008/12/31(水) 00:30:58 ID:???]
Pythonへのパスが間違ってるんじゃねえの?

122 名前:nobodyさん mailto:sage [2008/12/31(水) 06:43:36 ID:???]
apacheのログみろ

123 名前:nobodyさん mailto:sage [2008/12/31(水) 13:59:27 ID:???]
>パーミッションは755
これだろ


124 名前:119 [2008/12/31(水) 16:40:57 ID:FXljk5zO]
>>121 Python へのパス
同じ場所に別のcgiプログラムを置いたところ、パス指定が同じで正常に動作しますので、それはないと思われます。

>>120 >>122 shebang / apache
当方詳しくないものでわかりません、調べてみましたが使い方とかが…

正常に動くプログラムを部分的に改変することにより再現しようとしたら、文字コードを UTF-8 に (同時に、パスの次の行に
# -*- coding: utf-8 -*-
と) したらエラーが発生することがわかりました。

125 名前:fushianasan mailto:sage [2008/12/31(水) 17:06:27 ID:???]
しね

126 名前:nobodyさん [2008/12/31(水) 18:04:34 ID:kx00N+c5]
>>124
UnicodeEncode(Decode)Error
とか出てない?



127 名前:119 [2008/12/31(水) 18:26:15 ID:FXljk5zO]
>>126
ローカル実行時は出ていません。
サーバ実行時はこんだけです:
500 Error - Internal Server Error
CGIもしくはSSIが正しく動作していません。


128 名前:nobodyさん mailto:sage [2008/12/31(水) 18:45:54 ID:???]
>・ cgitb を試みたが、使えていない

import cgitb; cgitb.enable()
これでもだめ(500 Error - Internal Server Error がでる)って言う意味か?


129 名前:nobodyさん mailto:sage [2008/12/31(水) 18:47:20 ID:???]
>同じ場所に別のcgiプログラムを置いたところ、パス指定が同じで正常に動作しますので、それはないと思われます。

動くものと動かないもののソース晒せ


130 名前:nobodyさん [2008/12/31(水) 19:59:42 ID:kx00N+c5]
解決しました
ありがとうございました

131 名前:119 [2008/12/31(水) 20:38:51 ID:FXljk5zO]
>>128
そのとおりです。

>>129
動くもの: エンコーディングは ANSI (windows notepad の)
#!/usr/local/bin/python

import cgi
import urllib
from time import localtime, strftime
filename = strftime("./data/hatena%Y%m%d-%H%M%S.html", localtime())
print ""
target = urllib.urlopen("www.google.co.jp/")
data = open(filename, "w")
data.write(target.read())
data.close()
print target.read()

動かないもの: エンコーディングはUTF-8
コードはパスの次の行に
# -*- coding: utf-8 -*-
を追加しただけ

132 名前:nobodyさん mailto:sage [2008/12/31(水) 22:14:06 ID:???]
target.read()
二回実行して問題ないんかな

133 名前:119 [2008/12/31(水) 22:29:30 ID:FXljk5zO]
>>132
UTF-8 でないものは2回実行しても動きます。
UTF-8 のものは1回でも動きません。

どうやら来年に持ち越しのようですね…。

134 名前:nobodyさん mailto:sage [2008/12/31(水) 23:03:42 ID:???]
池■田大■作の本名はソン・テチャク。小泉純一郎、小沢一朗は朝鮮人。
911では小型の水爆が使用されている。
ri■ch■ardkosh■im■izu.at.webry.info/
創価の保険金殺人事件。
オウム事件は、統一・創価.北朝鮮の共同犯行である。CIAが監修している。
www15.ocn.ne.jp/~oy■ako■don/kok_web■site/ir■iguc■hi.htm
与党も野党もメディアも全部朝鮮人だった。
jb■bs.li■vedo■or.jp/b■bs/read.cgi/news/20■92/115794■1306/

2ちゃんねるは統一■教会が個人情報を集めるための道具。運営には統一■教会がいる。
駅前で「手相を見せてください」と勧誘してるのが統一教■会。(カルト宗教)  
カルト宗教の下にいる人と上にいる奴を分けて考えないといけない。下にいる利用される人は上がどんなことをしてるか知らない。

ユダヤ権力の子分→2ちゃん運営=統一協会上層部=層化上層部=自民党清和会=野党の朝鮮人ハーフの政治家=
与党の朝鮮人ハーフの政治家=金 正日(キム・ジョンイル )=読売サンケイ=小沢十朗
ユダヤ人=ロックフェラー=ブッシュ=クリントン=ヒラリー=アドルフ・ヒトラー=オサマ・ビンラディン

毎日新聞スレを荒らしてる奴らも統■一教会の可能性が高い。
荒らしは洗脳するために「ネトウヨ」などのレッテル付けレスを何千回もする。
現実には「ネトウヨ」などは存在しない。
changi.2ch.net/test/read.cgi/ms/1230363385/

135 名前:nobodyさん mailto:sage [2008/12/31(水) 23:22:47 ID:???]
>>131
つまりファイルは出来てないんだね

136 名前:119 [2008/12/31(水) 23:38:28 ID:FXljk5zO]
>>135
公開できない文字列を含む部分などを隠していますが、テストコードの段階であることは確かですね。
しかし、より小さいコードで試した結果などから、原因は文字コード周りにあると考えてよいと思います。
この点についてはサーバ管理者に問い合わせましたが、年末につき返信待ちであります。



137 名前:nobodyさん mailto:sage [2008/12/31(水) 23:46:18 ID:???]
よいお年を

138 名前:nobodyさん mailto:sage [2008/12/31(水) 23:47:39 ID:???]
python初心者がはまる典型的なパターンじゃないかな


139 名前:nobodyさん mailto:sage [2008/12/31(水) 23:50:25 ID:???]
>>136
「ファイルは出来てない」はプログラムが完成していないという意味じゃなくて

<ここまでに死んでるのか
data = open(filename, "w")
data.write(target.read())
data.close()
<この辺で死んでるのか
print target.read()
を知りたかった訳なんだけど
どう?

140 名前:119 [2009/01/01(木) 00:03:06 ID:l/3teeKT]
年明けとほぼ同時に解決しましたw
悪の元凶: Windows メモ帳
直接原因: UTF-8 には入れるべきでない余分なヘッダ (?) 3バイトがファイル先頭に挿入されていた
対策: バイナリエディタで開いて先頭3バイトを削除して保存しなおす

141 名前: 【大吉】 mailto:sage [2009/01/01(木) 00:09:53 ID:???]
あけおめ

142 名前:nobodyさん mailto:sage [2009/01/01(木) 00:11:44 ID:???]
pythonってBOMに対応してなかったっけ?

143 名前:nobodyさん mailto:sage [2009/01/01(木) 00:12:38 ID:???]
>UTF-8 には入れるべきでない余分なヘッダ (?) 3バイトがファイル先頭に

BOMのことか
それを「UTF-8 には入れるべきでない」っつーのは言いがかりだな
まあそれが原因で shebang が利かなくなってたのは確かだが
Windows メモ帳 を悪の元凶と言うのは素人


144 名前: 【だん吉】 [2009/01/01(木) 00:23:45 ID:fHn+ttSa]
>>142
python自体はBOM付いてても受け付けるけど
shellが解釈する時点でだめでしょ

145 名前:nobodyさん mailto:sage [2009/01/01(木) 00:27:57 ID:???]
悪の元凶: Windows メモ帳
に同意

146 名前:nobodyさん mailto:sage [2009/01/01(木) 00:39:00 ID:???]
△悪の元凶: Windows メモ帳
○悪の元凶: Windows メモ帳を使用



147 名前: 【大凶】 mailto:sage [2009/01/01(木) 17:22:06 ID:???]
あけおめ!

148 名前:nobodyさん mailto:sage [2009/01/01(木) 19:22:20 ID:???]
大凶ワロタw

149 名前:nobodyさん mailto:sage [2009/01/02(金) 18:12:01 ID:???]
>>144
shebangを解釈するのはカーネルだけどね

150 名前:nobodyさん mailto:sage [2009/02/13(金) 18:10:26 ID:???]
Python CGI に <input type="submit"> および <input type="reset"> を書いたとします
それぞれをクリックしたら何が起こるんでしょうか?

151 名前:nobodyさん mailto:sage [2009/02/13(金) 19:57:40 ID:???]
>>150
submit…一緒に出力されているhtmlでsubmitの親ノードになってるformのactionに対して送信する
reset…一緒に出力されているhtmlでresetの親ノードになっているform内のinput/select/textarea等がクリアされる

PythonのCGIって言っても単にブラウザに向かってHTML(たまにCSVとかXMLとかバイナリとか違うものも吐くけど)
を吐き出してるだけなんで、普通のHTMLと同じ挙動をするだけだよ。

152 名前:150 mailto:sage [2009/02/13(金) 20:37:43 ID:???]
あーごめんなさい、書き方が悪かったみたいですね
その「送信された側」などの関係がわからないのです。

153 名前:nobodyさん mailto:sage [2009/02/13(金) 20:43:19 ID:???]
>>152
ブラウザの実相にもよるけど、大抵のメジャーブラウザはresetはサーバーとの通信を
行わずローカルだけでやるはずなので、送信元になるのが何であっても(静的HTMLでも、
PythonのCGIが吐き出したHTMLでも、PHPやPerlCGIが吐き出したのでも)同じ動きです。

formからの送信を受け取る側がPythonのCGIなら、↓参照
www.python.jp/doc/release/lib/module-cgi.html

154 名前:150 mailto:sage [2009/02/13(金) 22:21:19 ID:???]
>>153
そうです、そこ見てたんですよ。
Python 勉強しはじめて、ローカルで動くプログラムはいろいろ書いてはいるんですが
送信側と受信側との関係? というか…
FieldStorage() して getlist(name) というのはわかったのですが
どうやってデータをここに入れてあげればいいのかが…

155 名前:nobodyさん mailto:sage [2009/02/13(金) 23:19:15 ID:???]
>>154
他の言語(Perl,PHP.Rubyなど)でHTTPサーバー⇔ローカルの通信やったことありますか?

<form action="python.cgi" method="post">
<input type="text" name="hoge" value="mage" />
<input type="submit" value="送信" />
<input type="reset" value="リセット" />
</form>
というHTMLがあったとして、

submitする…cgi.FieldStorage()するとform["hoge"].valueにmageが入る

resetする…サーバーと通信は行わずローカルのブラウザ側でinput type="text"のvalueをクリア

156 名前:150 mailto:sage [2009/02/13(金) 23:39:29 ID:???]
まったくないですね… なるほど Python に限った話じゃないからリファレンス見てもほとんど書いてなかったのか

上のコードの場合、FieldStorage() は python.cgi の中でするんでしょうか。これで合ってれば、ほぼ理解できました。



157 名前:nobodyさん mailto:sage [2009/02/13(金) 23:42:06 ID:???]
>>156
cgi.FieldStorage()は通信を受け取った側(>155のHTMLをそのまま使うとすると、おっしゃる通りpython.cgiの中で)
することになります。

↓に少しサンプルがあるので見てみてください。
www.python.jp/doc/release/lib/node561.html

158 名前:150 mailto:sage [2009/02/14(土) 00:26:36 ID:???]
なるほど、よくわかりました。ありがとうございます!
サンプルの方は既に見てましたよ〜。

159 名前:nobodyさん mailto:sage [2009/02/14(土) 09:03:11 ID:???]
ttp://www.amazon.co.jp/dp/4797341815/

入門書嫁。

160 名前:150 mailto:sage [2009/02/14(土) 16:20:41 ID:???]
問題がHTMLフォームの挙動を十分に理解していないことにあるとわかったので
www.kanzaki.com/docs/html/htminfo31.html htminfo32.html htminfo33.html を読んですっきりしました。


161 名前:nobodyさん mailto:sage [2009/02/15(日) 14:00:15 ID:???]
こういう人は、皮肉でもなんでもなくPerlCGIから入った方がいいような気がする。
WEBアプリ、特にCGIの入門者が躓きやすいところの情報は、未だにPerl CGIの頃の情報が一番豊富だろ。

んで、悪い癖がつく前にPythonなりRubyなりに移行すれば(またはしなくても)いいんじゃないかと。

162 名前:nobodyさん mailto:sage [2009/02/15(日) 22:49:01 ID:???]
ほぼ同意だけどPHPのほうが良いと思う。
WEBに特化してるだけあってそのあたりのことも
マニュアルで解説されてる。

ただし、Perl以上にPHPのほうが癖が強かったりする。

163 名前:nobodyさん [2009/02/18(水) 19:38:12 ID:q8sXwxpK]
cgiの仕様は糞
checkboxの受け取り方とかタヒネとか思う

164 名前:nobodyさん mailto:sage [2009/02/19(木) 19:04:35 ID:???]
タヒネってなんですか?

165 名前:nobodyさん mailto:sage [2009/02/19(木) 22:50:20 ID:???]
人生そのものだよ

166 名前:nobodyさん [2009/04/26(日) 16:13:15 ID:+askKVed]
質問です。
PythonをWebアプリからはじめて
ゆくゆくはGUIもやってみたいなと思ってる初心者ですが
オススメの書籍は>>159の他にありますか?
Webアプリのセキュリティあたりにも触れているととても幸せです。

現在チュートリアル見てちまちまと勉強中です。
ソースコードがシンプルで好きになれそう…



167 名前:nobodyさん mailto:sage [2009/04/26(日) 16:14:58 ID:???]
pythonをwebで使うならDjangoのようなフレームワーク使うのが良いと思うね

168 名前:nobodyさん [2009/04/26(日) 16:19:43 ID:+askKVed]
>>167
いずれはそうしたいと思うんですが
はじめからFWやると細かい部分吸収されちゃって学習出来なさそうなんで
俺俺FW作りつつ勉強してみたいなと思ってます

169 名前:nobodyさん mailto:sage [2009/04/26(日) 18:29:24 ID:???]
Webアプリ作っていくならPython本より他の本読んだ方がマシだと思われ
身になること書いてないしサンプルコードとモジュールのソースコード読みながらやっていく方が楽だ

170 名前:166 mailto:sage [2009/04/26(日) 18:42:27 ID:???]
出先からですが、解答ありがとう
書店きてみましたがPython本の品薄っぷりに泣きました。
暫らくWeb上で調べながらやってみます!

171 名前:nobodyさん mailto:sage [2009/05/05(火) 22:09:13 ID:???]
WSGIの質問はここでいいですか?

172 名前:nobodyさん mailto:  [2009/05/07(木) 09:59:48 ID:???]
どうぞ

173 名前:nobodyさん mailto:sage [2009/06/10(水) 09:52:49 ID:???]
質問です!
最近、BlackJumboDogを使ってWindowsXPでWEBサーバを立てたのですが
PerlとRubyは動くのにPythonが動きません。
cmdから「perl -v」「python -v」「ruby -v」をやるとエラーの雰囲気は無い応答が帰ってくるので
問題ないとおもうのですが、何か原因がわかるかたいますか?
ちなみに「python -v」を打ち込むとperlやrubyではバージョンとかが出るのですが
pythonだけ対話モードみたいなのに入ります。
cgiの中身は以下のようになってます。

#!/python

# -*- coding: utf-8 -*-
import cgi
import cgitb
cgitb.enable()

print "Content-Type: text/html"
print
print "hello world."

アクセスすると真っ白です。
どなたかお助け願います。お願いしますよろしくお願いします!

174 名前:nobodyさん mailto:sage [2009/06/10(水) 22:27:31 ID:???]
どうやらインタープリターの呼び分けが
ハードコーディングされてるっぽいから
単にPythonに対応してないんでしょ。

ApacheやIISの方が、導入敷居が高くても
結局は情報がたくさんそろっててはまりづらいと思うよ。

175 名前:nobodyさん mailto:sage [2009/06/11(木) 21:30:24 ID:???]
#!c:\\python\\python.exe
とかって書けば動いたぞ

176 名前:nobodyさん mailto:sage [2009/06/12(金) 03:16:41 ID:???]
何時の時代の話だ?ってレベル



177 名前:nobodyさん mailto:sage [2009/06/12(金) 10:26:51 ID:???]
それコピペ

178 名前:nobodyさん mailto:sage [2009/06/12(金) 15:47:46 ID:???]
winで鯖立てるレベル

179 名前:nobodyさん mailto:sage [2009/06/22(月) 21:45:25 ID:???]
意外と便利だよ。Excelファイルごにょごにょとか

180 名前:nobodyさん mailto:sage [2009/06/28(日) 01:29:28 ID:???]
#!/usr/bin/python

181 名前:nobodyさん mailto:sage [2009/07/03(金) 06:25:05 ID:???]

    ┌─┐
    │●│
    └─┤
   _   ∩
  ( ゚∀゚)彡
┌─┬⊂彡
│●│ おっぱい!おっぱい!
└─┘      おっぱい!おっぱい!



182 名前:nobodyさん mailto:sage [2009/07/29(水) 23:21:51 ID:???]
とりあえず保守

183 名前:nobodyさん [2009/08/07(金) 02:25:12 ID:tKq4DxW5]
無料ホームページスペースでpython CGIを動かしたいと思っています。
CGIの内部で、BeautifulSoupを使いたいのですが、
BeautifulSoup.pyを、与えられたスペースに置けば使うことができるのでしょうか?


184 名前:nobodyさん [2009/08/07(金) 03:07:58 ID:tKq4DxW5]
183です。自己解決しました。
置けば使うことができる。
しかし、BeautifulSoupの場合はコード量が多すぎるのか
memory errorになる。
(もっと小さいオリジナルライブラリなら動く)

185 名前:nobodyさん mailto:sage [2009/08/11(火) 21:51:30 ID:???]
etreeでがんばるしかないね

186 名前:nobodyさん [2009/08/15(土) 04:13:53 ID:LWrcnMLs]
.



187 名前:nobodyさん mailto: [2009/08/20(木) 22:09:34 ID:???]
「Python 3.1.1」リリース
pc11.2ch.net/test/read.cgi/pcnews/1250773470/

188 名前:nobodyさん [2009/10/03(土) 23:03:34 ID:9tHx6UBF]
PythonってLL言語の中では最速って本当ですか?
サーバサイドで使う場合でもPHPよりも優れたパフォーマンスを出せるかどうか心配です。

189 名前:nobodyさん mailto:sage [2009/10/03(土) 23:32:03 ID:???]
wsgi

190 名前:nobodyさん mailto:sage [2009/10/08(木) 06:16:22 ID:???]
>>188
Pythonは重いyo
さようなら

191 名前:nobodyさん mailto:sage [2009/10/09(金) 22:11:15 ID:???]
mod_pythonは?

192 名前:nobodyさん mailto:sage [2009/10/10(土) 14:11:35 ID:???]
ぷゅあCGIじゃない

193 名前:nobodyさん mailto:sage [2009/10/16(金) 14:24:53 ID:???]
>>188
動的な言語での最速はLuaか最近のJavaScriptじゃないかな。あとRuby1.9とか。
Pythonは、mod_python使うとPHPより速かった。
ただ共有サーバではmod_python使えないので、PHPより速いかどうかは「環境依存」としか言えない。
あとPHPとPythonの速度を気にするよりも、フレームワークやライブラリの速度を気にした方がいい。

194 名前:nobodyさん mailto:sage [2009/10/16(金) 14:26:58 ID:???]
>>193
あーごめん、追記ね。PHPはAPS入れるとmod_pythonより速いかもしれない。
そういうのも含めて、やっぱり「環境依存」だね。
Pythonは決してPHPより遅いわけではない。でも環境によりけり。

195 名前:nobodyさん mailto:sage [2009/10/17(土) 04:57:06 ID:???]
Python(>=2.5)+SQLite3爆速

196 名前:nobodyさん mailto:sage [2009/10/17(土) 07:39:06 ID:???]
ttp://newworld.ddo.jp/doc/PerformanceTips/
日本語が下手過ぎて読み難いけど速度改善の参考にはなる



197 名前:nobodyさん mailto:sage [2009/10/17(土) 16:20:53 ID:???]
下手な翻訳よりもこっち読め
ttp://wiki.python.org/moin/PythonSpeed/PerformanceTips

198 名前:nobodyさん mailto:sage [2009/12/04(金) 02:12:35 ID:???]
mod_pythonの仕様はないよなぁ
作り直したりしないのかな

199 名前:nobodyさん mailto:sage [2009/12/04(金) 03:31:26 ID:???]
python web framework って流行ってないの。
やるなら実質 gae 一択?
pylons しこしこいじってるんだけど、寂しいよ。

200 名前:nobodyさん mailto:sage [2009/12/04(金) 11:45:04 ID:???]
自分の場合
django
あるいは
wsgi で自作 Framework

201 名前:nobodyさん mailto:sage [2009/12/04(金) 11:52:20 ID:???]
gaeは糞w

202 名前:nobodyさん mailto:sage [2009/12/04(金) 12:06:56 ID:???]
django一択になってしまったなぁ。
最初はpylonsやtgにも期待してたんだけど。

203 名前:nobodyさん mailto:sage [2009/12/04(金) 14:48:24 ID:???]
web.pyでいいよもう

204 名前:199 mailto:sage [2009/12/05(土) 00:23:15 ID:???]
>>203
web.py の minimal 感良いですね。知らなかった。pylons も minimal な感じが気に入ったんだけど、こっちのが良いかな。
でも pylons より情報少ない感じですね?

205 名前:nobodyさん mailto:sage [2009/12/11(金) 15:26:40 ID:???]
CherryPyでいい気がしてきた。

206 名前:sage [2009/12/14(月) 17:21:38 ID:DjxYEeHj]
werkzeugの話題がまったくでないなー



207 名前:nobodyさん mailto:sage [2009/12/15(火) 01:02:33 ID:???]
>>206
なんて読むの?

208 名前:nobodyさん mailto:sage [2009/12/15(火) 07:34:14 ID:???]
ヴェルクゾイク

209 名前:nobodyさん mailto:sage [2009/12/15(火) 07:38:21 ID:???]
d.hatena.ne.jp/perezvon/20090108/1231439151
ヴェルクツォイグ?

210 名前:nobodyさん mailto:sage [2009/12/15(火) 13:14:21 ID:???]
アルツハイマー






[ 新着レスの取得/表示 (agate) ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧](*・∀・)<38KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef