• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Flask入門
 

Flask入門

on

  • 4,668 views

 

Statistics

Views

Total Views
4,668
Views on SlideShare
2,843
Embed Views
1,825

Actions

Likes
6
Downloads
6
Comments
0

14 Embeds 1,825

http://blog.aoshiman.org 785
http://blog.kzfmix.com 546
http://127.0.0.1 425
http://cloud.feedly.com 29
http://www.feedspot.com 15
http://www.hanrss.com 7
http://153.120.36.147 7
https://twitter.com 5
http://everrss.me 1
http://localhost 1
http://cache.yahoofs.jp 1
http://webcache.googleusercontent.com 1
http://192.168.11.15 1
http://digg.com 1
More...

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Flask入門 Flask入門 Presentation Transcript

    • Flask入門 @aoshiman 2013-07-06 Shizuoka.py #2 13年7月6日土曜日
    • 自己紹介 • 青島(@aoshiman) • 葵区在住、清水区の食品会社に勤務(社内SE) • 経理畑(実務10年)からのジョブチェンジ。ひょんなことから情 シスの一員に • 会社ではVBA、プライベートでPython(2008年頃から浅く浅 く) • Python製TwitterBotを3つ管理しています(@cookpad_recipe など)機会があればいつかご紹介したいです 13年7月6日土曜日
    • Flaskとは • PythonのWeb Application Frameworkのひ とつ • オーストリア人のArmin Ronacherが開発 13年7月6日土曜日
    • • マイクロフレームワークに属する • WSGI(ウィスキー Web Server Gateway Interface)サポ ート • Werkzeug(ヴェルクツォイグ)とJinja2(ジンジャ)がベ ース • デコレータを多用(可能)※Flask(もっと言えばPython) に限ったことではないが... Flaskの特徴 13年7月6日土曜日
    • • 似たようなフレームワークにBottleというのがある(http://bottlepy.org) • 軽量(1Fileフレームワーク)、書き方などはFlaskライク Flaskに近いフレームワーク 作成して実際に動かしているもの • https://bitbucket.org/aoshiman/webhook • bitbucketにあるリモートリポジトリへgit pushすると同時に変更を本 番環境へ反映させるWebアプリ。bitbucketのwebhook(通知POST) を待ち受け、通知があればgit pullさせている。 13年7月6日土曜日
    • • Python2.xで動作。3(3.3)は鋭意対応中でしたが ver. 0.10より正式サポート Flaskの動作環境 個人的にはFlaskが3をサポートしたらPython3をや り始めようと思っていたので頑張ります 13年7月6日土曜日
    • どのように書くのか - Hello Flask編 - # -*- coding: utf-8 -*- from flask import Flask app = Flask(__name__) @app.route("/") def index(): return "Hello Flask" if __name__ == '__main__': app.run(debug=True) flaskモジュールからFlaskクラスをイン ポートする Flaskクラスのインスタンスを作りapp へ代入 Hello Flaskを表示させるindex関数を routeデコレータでurlマッピング デバッグモードで実行 (127.0.0.1:5000で待受) 13年7月6日土曜日
    • どのように書くのか - サブページ編 - # -*- coding: utf-8 -*- from flask import Flask app = Flask(__name__) @app.route("/") def index(): return "Hello Flask" @app.route("/sub") def sub(): return "Hello SubPage" if __name__ == '__main__': app.run(debug=True) デバッグモードで実行 (127.0.0.1:5000で待受) Hello SubPageを表示させるsub関数 をrouteデコレータでurlマッピング (http://127.0.0.1:5000/sub) 13年7月6日土曜日
    • どのように書くのか - 可変ページ編 - @app.route("/sub") def sub(): return "Hello SubPage" @app.route("/user/<username>") def get_user(username): return "Welcome %s's Page" % username if __name__ == '__main__': app.run(debug=True) usernameを表示させるget_user関数 をrouteデコレータでurlマッピング (http://127.0.0.1:5000/user/ username) 13年7月6日土曜日
    • これらを踏まえて20行くらいの小さ なアプリを作ってみる 13年7月6日土曜日
    • どんなもの? 13年7月6日土曜日
    • 事実婚 支援サイト 週刊文春 不買運動支援サイト 13年7月6日土曜日
    • サーバの稼働状況をリアルタイムに表 示させるWebアプリ 13年7月6日土曜日
    • 凄そう!? そうでもない 13年7月6日土曜日
    • • http://example.com/infoにアクセスしたらtopコマ ンド実行して結果をブラウザに表示 • なんちゃってリアルタイムの実現にmata http- equiv= refresh を利用。デフォルトで3秒、/info? refresh=n(秒)で間隔を調整可能 • http://example.com/にアクセスしたら/infoへリダ イレクト topコマンドを叩いて結果をブラウザに流し こむWebアプリ 13年7月6日土曜日
    • 今回作ったもの https://bitbucket.org/aoshiman/ top-info ここをこうしたら良いよとかございましたら是非教 えて下さい 13年7月6日土曜日
    • • 日本語解説は少ない((個人的見解ですが)少ない日本語解説は当たりが多い) Flaskを学んでいく上での注意点 私の場合は • Flask公式ドキュメント(MailingListアーカイブ含む)を活用 • stackoverflowのFlaskタグを追いかける • Githubのコード検索←最近はこれを重視 結構苦労するがBottleよりはマシ 13年7月6日土曜日
    • 最後に 皆さんの周りに「Pythonでプログラミングを勉強し始めた いんだけど・・」という変わった素晴らしい方がいらっしゃ ったら是非下記本をオススメしてみて下さい 個人的には(ビギナー向けに)かなりオススメです この本の後、一般的に勧められている本にステップ アップするのがよいかと考えます 13年7月6日土曜日
    • まとめ Flaskは(日本語情報等に)苦労するかもしれな いが、やり続ければ、きっと楽しく、やめられ ないフレームワークになると思います 13年7月6日土曜日