Blog

Pythonで遊ぼう

2015.03.13 | Python | 1688views


python-logo-master-v3-TM前回に引き続き、せっかくMacを持っているならPythonで遊ぼうのコーナーです。前はSimpleserverというモジュールをインポートしてWebサーバーを立ち上げてみました。今回はもっと実践的で直ぐに遊べるPythonの遊び方をご説明していきます。Pythonを初めて触る場合、PHPなどと違いWEBへの組み込み、というかHTMLにどう組み込んで動かせばいいのか分からなくなって躓くということが多いような気がします。

今回はHTMLをPythonで表示し、実際にサーバーで動作させるところまで具体的に解説していきたいと思います。その前にストアからtextwranglerをダウンロードしておいていただくとスムーズにことが運びます。

スクリーンショット 2015-03-11 15.13.10

まずはフォルダーを作ろう

まずPythonでサーバーを立ち上げて遊ぶにあたって、フォルダを一つ作っておきましょう。私はいつも pyworks という名前でフォルダを作っていますので、今回は pyworks という名前でフォルダを作ってください。この時、注意したいのはデスクトップではなくMacのユーザー直下にフォルダを作らないと後が面倒くさいということです。以下を参考にしてみてください。

フォルダーを作ろう

フォルダーが出来ましたか?ではこのフォルダーの中に更にフォルダを一つ作りましょう。名前は cgi-bin としてください。

フォルダーcgi-bin

こんな感じで設置出来ましたか?では前回同様Webサーバーをまずは立ち上げてみましょう。

スクリプトを書いていこう

textWranglerを開いて以下のように打ち込んで保存しましょう。今回はserver.pyという名前をつけて保存してみてください。


import SimpleHTTPServer
SimpleHTTPServer.test()

この時保存する場合は必ずUTF-8で保存することを忘れないようにしましょう。 server.py と名前をつけてpyworksフォルダに保存してください。次にindex.htmlファイルを作りましょう。


<html>
	<body>
	Hello py
	</body>
</html>

とまぁなんでも良いです。先ほど保存した server.py と同じ階層に保存します。

フォルダ階層

server.pyを動かしてindex.htmlを表示させよう

では、いよいよターミナルを起動してみましょう。


$ cd pyworks

上記コマンドでディレクトリを移動し、pyworksフォルダへ移動します。これを忘れると動きませんのでご注意!以下のように移動できていれば正解です。

ディレクトリの移動

ではシェルで以下の文字を入力してください。サーバーが立ち上がります。


$ python server.py

Serving HTTP on 0.0.0.0 port 8000 … という表示が出ていますでしょうか。ブラウザにhttp://127.0.0.1:8000/を入力してみましょう。同じフォルダに保存したindex.htmlに書かれた内容がブラウザに出力されているはずです。

Pythonアプリケーションを動かす準備をしよう

静的なhtmlファイルを表示させるのはこれだけなんですが、これでは全くおもしろくもクソも無いですよね。というわけでPythonのアプリケーションを開発できる環境をささっと作ってしまいましょう。


import CGIHTTPServer
CGIHTTPServer.test()

このように記述し、cgiserver.py という名前をつけてpyworksフォルダに保存してください。一旦ターミナルに移動して ctr + c でサーバーを止めておきます。普通にターミナルを終了してしまっても構いませんが、その場合はもう一度ディレクトリをpyworksまで移動しておいてください。

次は実際のPythonスクリプトをcgi-binフォルダに保存します。今回はサンプルですから非常に簡単な内容を記載していきましょう。


#!/usr/bin/env python
print "Content-type: text/html\n"
print "<html><body>Hello world !</body></html>"

定番のHello worldですね。このファイルを test.py としてcgi-binフォルダに保存してください。保存できましたか?

testpy

こういう配置になっているかどうかを確認して下さいね。

chmod 755 ***で実行権限を与えよう

先ほど設置したtest.py のパーミッションを設定しなければなりません。755とは「通常のディレクトリ、コマンド、CGIスクリプトなど。誰でも読込みと実行はできるが、書き込みは自分だけ。」という権限の設定です。実際にターミナルから実行しましょう。ディレクトリを移動してcgi-binの中のtest.pyに755を与えます。


$ cd cgi-bin


$ chmod 755 test.py


$ cd pyworks

面倒ですが今はこのやり方でやってください。

いよいよ実行しよう

ではようやく実行しましょう!


$ python cgiserver.py

ターミナルで実行したら http://127.0.0.1:8000/cgi-bin/test.py にブラウザでアクセスしてみましょう。test.pyで書いた内容が出力されているはずです。では最後に先ほどのtest.pyの中身を説明していきましょう。


#!/usr/bin/env python #おまじない
print "Content-type: text/html\n" #おまじない
print "<html><body>Hello world !</body></html>" #print で<html>から</html>を出力しろという命令

次回は更に発展した内容をお届けできればと思ってます。

このエントリーが役に立ったらシェアしてください


LLC JIRIKI HOME

この記事を書いた人

淵上 喜弘

著者:LLC JIRIKI

合同会社ジリキ 代表社員兼、業務執行社員。
1979年生まれ 兵庫県尼崎市出身・明石市育ち。

川崎医療福祉大学を卒業後、日産サティオ岡山に就職し初年度新人賞をカルロス・ゴーンCEOより受賞。その後NTT関連フレッツ販売会社に再就職し、地域賞2位を受賞。OCN販売表彰2位も同時受賞するとともにBフレッツ単独販売数の記録を打ち立てる。2006年合同会社ジリキ設立。SEO、WEBサイト制作業を開始する。

SEOで「大阪 探偵」や「離婚 行政書士」などのキーワードや「子ども 教材」「スマートフォンケース」など各種キーワードで1位を獲得。サイト制作でも毎日コミュニケーションズ・マイナビ女子オープンのサイトを制作。その後ECサイト運営サポートに着手し、売上月商50万のストアを1年半で1700万の月商に成長させる。

スマートフォンケースなどの商品企画開発も手がけ、楽天ランキングでも1位獲得、家電ジャンルMVPなどECサイトコンサルティングでも実績あり。

現在、グロースハックに注力しており様々な業種のサイトのCVアップをサポート中。チームとしてのグロースハック実績ではKaizenグロースハッカー総合 Top 20%、不動産 Top 10などを頂いています。

プログラミングは本業ではなくあくまでも趣味の一環として取り組んでいます。月1回ペースで東京へ出張へ行っておりますので、機会があれば是非お話をしましょう。

LLC JIRIKI