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


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

Python CGI



1 名前:nobodyさん [2006/11/14(火) 23:09:04 ID:KpRkBouP.net]
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

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

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

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

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

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

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

156 名前:nobodyさん mailto:sage [2009/02/13(金) 23:19:15 ID:???.net]
>>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をクリア

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

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

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

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

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

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

入門書嫁。



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


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

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

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

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

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

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

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

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

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

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

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

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



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

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

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

174 名前:nobodyさん mailto:sage [2009/06/10(水) 09:52:49 ID:???.net]
質問です!
最近、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."

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

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

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

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

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

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

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

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



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

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

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



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

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


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

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

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

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

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

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



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

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

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

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

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

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

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

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

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

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



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

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

203 名前:nobodyさん mailto:sage [2009/12/04(金) 12:06:56 ID:???.net]
django一択になってし

204 名前:まったなぁ。
最初はpylonsやtgにも期待してたんだけど。
[]
[ここ壊れてます]

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

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

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

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

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

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



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

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

213 名前:nobodyさん [2010/03/12(金) 22:20:20 ID:ervBW8Jl.net]
pythonでformの値を受け取る処理ってどんなの?

phpだと
<?php
$name = $_GET['name'];
echo $name;
?>
こんな感じだけど。

214 名前:nobodyさん mailto:sage [2010/03/13(土) 04:58:15 ID:???.net]
def post(self, name):
return ([name])

215 名前:nobodyさん mailto:sage [2010/03/13(土) 10:35:27 ID:???.net]
>>211
cgi関数で拾ってくれる。

216 名前:nobodyさん mailto:sage [2010/03/13(土) 20:02:06 ID:???.net]
そうなのか。知らなかった。


217 名前:nobodyさん mailto:sage [2010/03/14(日) 10:39:03 ID:???.net]
>>212
なにこれ?

218 名前:nobodyさん mailto:sage [2010/03/14(日) 13:28:13 ID:???.net]
wsgi

219 名前:nobodyさん mailto:sage [2010/03/14(日) 13:39:51 ID:???.net]
>>216
なんか勘違いしてる

220 名前:nobodyさん mailto:sage [2010/03/14(日) 13:53:36 ID:???.net]
えっ?



221 名前:nobodyさん mailto:sage [2010/03/14(日) 18:03:26 ID:???.net]
えっ?

222 名前:nobodyさん mailto:sage [2010/03/14(日) 22:46:37 ID:???.net]
えっ?


223 名前:nobodyさん mailto:sage [2010/03/14(日) 22:50:22 ID:???.net]
www.python.org/dev/peps/pep-0333/
def simple_app(environ, start_response):
"""Simplest possible application object"""
status = '200 OK'
response_headers = [('Content-type','text/plain')]
start_response(status, response_headers)
return ['Hello world!\n']



224 名前:nobodyさん mailto:sage [2010/03/14(日) 22:53:06 ID:???.net]
えっ?


225 名前:nobodyさん mailto:sage [2010/03/14(日) 23:17:42 ID:???.net]
def post(self, name):
return ([name])

第二引数に渡されるのはstart_responseです。

226 名前:nobodyさん mailto:sage [2010/03/14(日) 23:37:30 ID:???.net]
えっ?


227 名前:nobodyさん mailto:sage [2010/03/15(月) 01:06:07 ID:???.net]
お互い噛み合ってないのがそんなに楽しいの。

228 名前:nobodyさん mailto:sage [2010/03/15(月) 01:13:17 ID:???.net]
えっ?


229 名前:nobodyさん mailto:sage [2010/03/15(月) 01:21:29 ID:???.net]
なにそれこわい

230 名前:nobodyさん mailto:sage [2010/03/15(月) 01:37:57 ID:???.net]
えっ?




231 名前:nobodyさん mailto:sage [2010/03/15(月) 18:45:47 ID:???.net]
( ^ω^)えっえっ

232 名前:nobodyさん mailto:sage [2010/03/16(火) 02:37:45 ID:???.net]
( ^ω^)おっおっ

233 名前:nobodyさん mailto:sage [2010/03/16(火) 19:57:20 ID:???.net]
os.environ['hoge']
cgi.FieldStorage()['hoge']
の文字コードを調べる方法があれば教えてください。Pythonのバージョンは2.5です

234 名前:nobodyさん mailto:sage [2010/03/17(水) 07:19:18 ID:???.net]
def guess_code(s):
  if isinstance(s, unicode):
    return 'UNICODE'
  for c in ['utf-8', 'euc-jp', 'cp932', 'iso-2022-jp', 'latin-1', 'ascii']:
    try:
      u = s.decode(c)
      return c
    except (UnicodeDecodeError, LookupError):
      continue
    else:
      return 'unknown'

s = os.environ['hoge']
print guess_code(s)
s = cgi.FieldStorage()['hoge']
print guess_code(s)

235 名前:nobodyさん mailto:sage [2010/03/17(水) 14:55:48 ID:???.net]
>>211

import cgi;

f = cgi.FieldStorage()
value = f.getvalue('name','')
print value

236 名前:nobodyさん mailto:sage [2010/03/17(水) 22:35:43 ID:???.net]
>>232
ありがとうございます

237 名前:nobodyさん mailto:sage [2010/03/21(日) 22:16:25 ID:???.net]
初めてのPython読んでるけど、これ凄いじゃん。
流行ってないのが信じられないくらい。海外では流行ってるのかな?>PythonCGI

238 名前:nobodyさん mailto:sage [2010/03/22(月) 03:50:53 ID:???.net]
海外ではCGIが廃れてるよ

239 名前:nobodyさん mailto:sage [2010/03/22(月) 07:00:39 ID:???.net]
つかWSGIの話題ってここでおk???

240 名前:nobodyさん mailto:sage [2010/03/22(月) 07:11:47 ID:???.net]
おk



241 名前:nobodyさん mailto:sage [2010/03/22(月) 16:50:00 ID:???.net]
廃れてんのかよ、そりゃ残念だ

242 名前:nobodyさん mailto:sage [2010/03/22(月) 22:39:31 ID:???.net]
誤解ではないかと。
狭義の意味でのCGIは廃れていいと思う。重いから。
FastCGIで自由にプロセスをまわしたい。

243 名前:nobodyさん mailto:sage [2010/03/22(月) 23:16:58 ID:???.net]
廃れてるつぅかPHPが圧倒的に盛んなだけ。
海外でも無料のレン鯖はCGIでPHP使うなら有償ってのが普通


244 名前:nobodyさん mailto:sage [2010/03/23(火) 00:29:59 ID:???.net]
>>240-241
なるほど。
そこらへんの共有レンタルサーバーじゃmod_pythonもFastCGIも使えなさそうだから、CGIとして使う機会はないのかも…
クライアントアプリ作るならC#のほうがよさそうだし、おとなしく遊び&学習目的にして、PHPで書くか…

ありがとうございました。

245 名前:nobodyさん mailto:sage [2010/03/23(火) 01:48:12 ID:???.net]
俺が知ってるとこだと@pagesがPython使える
国内の無料鯖
今の募集状況知らんけどphpも使えるし垢取れたらとっとけば?

246 名前:nobodyさん mailto:sage [2010/03/23(火) 05:21:48 ID:???.net]
xrea

247 名前:nobodyさん mailto:sage [2010/03/23(火) 07:42:38 ID:???.net]
あれ?xreaも使えるんか
んじゃそっちの方がいいか


248 名前:nobodyさん mailto:sage [2010/03/23(火) 08:24:10 ID:???.net]
Pythonが使えるサーバ一覧
ttp://python.rdy.jp/wiki.cgi?page=PythonAvailableServers


249 名前:nobodyさん mailto:sage [2010/03/23(火) 08:54:52 ID:???.net]
Pythonのお勉強

でもPerlのwiki(笑)

250 名前:nobodyさん mailto:sage [2010/03/23(火) 17:12:06 ID:???.net]
いや、ただのCGIとしてなら有料鯖なら大抵動かせるんだけど、FastCGIは動かせなかったり、バージョンが2.3だったり…
バイナリCGIとして動かすって手もあるんだね。
標準ライブラリだけで作るとしたら、どれくらいのサイズになるんだろう。



251 名前:nobodyさん mailto:sage [2010/03/23(火) 17:14:35 ID:???.net]
Python 2.6.5/3.1.2リリース
sourceforge.jp/magazine/10/03/23/048255

252 名前:nobodyさん mailto:sage [2010/03/23(火) 17:53:38 ID:???.net]
wsgiがあればpythonのフレームワークなんていらないのだろうか






[ 続きを読む ] / [ 携帯版 ]

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

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