Python:Flask环境搭建

0x01. 准备工作

iamcxl@iamcxl-ThinkPad-T450:~/pi$ mkdir flask
iamcxl@iamcxl-ThinkPad-T450:~/pi$ cd flask/
iamcxl@iamcxl-ThinkPad-T450:~/pi/flask$ ls
iamcxl@iamcxl-ThinkPad-T450:~/pi/flask$ mkdir myproject
iamcxl@iamcxl-ThinkPad-T450:~/pi/flask$ cd myproject/

0x02. 创建虚拟环境

iamcxl@iamcxl-ThinkPad-T450:~/pi/flask/myproject$ virtualenv env
Running virtualenv with interpreter /usr/bin/python2
New python executable in /home/iamcxl/my/flask/myproject/env/bin/python2
Also creating executable in /home/iamcxl/my/flask/myproject/env/bin/python
Installing setuptools, pkg_resources, pip, wheel...done.

0x03. 激活虚拟环境

iamcxl@iamcxl-ThinkPad-T450:~/pi/flask/myproject$ source env/bin/activate

0x04. 安装Flask

(env) iamcxl@iamcxl-ThinkPad-T450:~/pi/flask/myproject$ easy_install Flask

install log

Searching for Flask
Reading https://pypi.python.org/simple/Flask/
Downloading https://pypi.python.org/packages/eb/12/1c7bd06fcbd08ba544f25bf2c6612e305a70ea51ca0eda8007344ec3f123/Flask-0.12.2.tar.gz#md5=97278dfdafda98ba7902e890b0289177
Best match: Flask 0.12.2
Processing Flask-0.12.2.tar.gz
Writing /tmp/easy_install-aW110A/Flask-0.12.2/setup.cfg
Running Flask-0.12.2/setup.py -q bdist_egg --dist-dir /tmp/easy_install-aW110A/Flask-0.12.2/egg-dist-tmp-Ug2x_I
warning: no previously-included files matching '*.py[co]' found anywhere in distribution
no previously-included directories found matching 'docs/_build'
no previously-included directories found matching 'docs/_themes'
creating /home/iamcxl/my/flask/myproject/env/lib/python2.7/site-packages/Flask-0.12.2-py2.7.egg
Extracting Flask-0.12.2-py2.7.egg to /home/iamcxl/my/flask/myproject/env/lib/python2.7/site-packages
Adding Flask 0.12.2 to easy-install.pth file
Installing flask script to /home/iamcxl/my/flask/myproject/env/bin

Installed /home/iamcxl/my/flask/myproject/env/lib/python2.7/site-packages/Flask-0.12.2-py2.7.egg
Processing dependencies for Flask
Searching for click>=2.0
Reading https://pypi.python.org/simple/click/
Downloading https://pypi.python.org/packages/95/d9/c3336b6b5711c3ab9d1d3a80f1a3e2afeb9d8c02a7166462f6cc96570897/click-6.7.tar.gz#md5=fc4cc00c4863833230d3af92af48abd4
Best match: click 6.7
Processing click-6.7.tar.gz
Writing /tmp/easy_install-_Xishh/click-6.7/setup.cfg
Running click-6.7/setup.py -q bdist_egg --dist-dir /tmp/easy_install-_Xishh/click-6.7/egg-dist-tmp-l0m7NU
warning: no previously-included files matching '*.pyc' found under directory 'docs'
warning: no previously-included files matching '*.pyo' found under directory 'docs'
warning: no previously-included files matching '*.pyc' found under directory 'tests'
warning: no previously-included files matching '*.pyo' found under directory 'tests'
warning: no previously-included files matching '*.pyc' found under directory 'examples'
warning: no previously-included files matching '*.pyo' found under directory 'examples'
no previously-included directories found matching 'docs/_build'
zip_safe flag not set; analyzing archive contents...
click.core: module references __file__
creating /home/iamcxl/my/flask/myproject/env/lib/python2.7/site-packages/click-6.7-py2.7.egg
Extracting click-6.7-py2.7.egg to /home/iamcxl/my/flask/myproject/env/lib/python2.7/site-packages
Adding click 6.7 to easy-install.pth file

Installed /home/iamcxl/my/flask/myproject/env/lib/python2.7/site-packages/click-6.7-py2.7.egg
Searching for itsdangerous>=0.21
Reading https://pypi.python.org/simple/itsdangerous/
Downloading https://pypi.python.org/packages/dc/b4/a60bcdba945c00f6d608d8975131ab3f25b22f2bcfe1dab221165194b2d4/itsdangerous-0.24.tar.gz#md5=a3d55aa79369aef5345c036a8a26307f
Best match: itsdangerous 0.24
Processing itsdangerous-0.24.tar.gz
Writing /tmp/easy_install-ldJqSI/itsdangerous-0.24/setup.cfg
Running itsdangerous-0.24/setup.py -q bdist_egg --dist-dir /tmp/easy_install-ldJqSI/itsdangerous-0.24/egg-dist-tmp-yS3OPH
warning: no previously-included files matching '*' found under directory 'docs/_build'
creating /home/iamcxl/my/flask/myproject/env/lib/python2.7/site-packages/itsdangerous-0.24-py2.7.egg
Extracting itsdangerous-0.24-py2.7.egg to /home/iamcxl/my/flask/myproject/env/lib/python2.7/site-packages
Adding itsdangerous 0.24 to easy-install.pth file

Installed /home/iamcxl/my/flask/myproject/env/lib/python2.7/site-packages/itsdangerous-0.24-py2.7.egg
Searching for Jinja2>=2.4
Reading https://pypi.python.org/simple/Jinja2/
Downloading https://pypi.python.org/packages/90/61/f820ff0076a2599dd39406dcb858ecb239438c02ce706c8e91131ab9c7f1/Jinja2-2.9.6.tar.gz#md5=6411537324b4dba0956aaa8109f3c77b
Best match: Jinja2 2.9.6
Processing Jinja2-2.9.6.tar.gz
Writing /tmp/easy_install-SAtwoB/Jinja2-2.9.6/setup.cfg
Running Jinja2-2.9.6/setup.py -q bdist_egg --dist-dir /tmp/easy_install-SAtwoB/Jinja2-2.9.6/egg-dist-tmp-RYedD5
warning: no files found matching 'run-tests.py'
warning: no files found matching '*' under directory 'custom_fixers'
warning: no files found matching '*' under directory 'jinja2/testsuite/res'
warning: no previously-included files matching '*' found under directory 'docs/_build'
warning: no previously-included files matching '*.pyc' found under directory 'jinja2'
warning: no previously-included files matching '*.pyc' found under directory 'docs'
warning: no previously-included files matching '*.pyo' found under directory 'jinja2'
warning: no previously-included files matching '*.pyo' found under directory 'docs'
  File "build/bdist.linux-x86_64/egg/jinja2/asyncsupport.py", line 22
    async def concat_async(async_gen):
            ^
SyntaxError: invalid syntax

  File "build/bdist.linux-x86_64/egg/jinja2/asyncfilters.py", line 7
    async def auto_to_seq(value):
            ^
SyntaxError: invalid syntax

creating /home/iamcxl/my/flask/myproject/env/lib/python2.7/site-packages/Jinja2-2.9.6-py2.7.egg
Extracting Jinja2-2.9.6-py2.7.egg to /home/iamcxl/my/flask/myproject/env/lib/python2.7/site-packages
  File "/home/iamcxl/my/flask/myproject/env/lib/python2.7/site-packages/Jinja2-2.9.6-py2.7.egg/jinja2/asyncsupport.py", line 22
    async def concat_async(async_gen):
            ^
SyntaxError: invalid syntax

  File "/home/iamcxl/my/flask/myproject/env/lib/python2.7/site-packages/Jinja2-2.9.6-py2.7.egg/jinja2/asyncfilters.py", line 7
    async def auto_to_seq(value):
            ^
SyntaxError: invalid syntax

Adding Jinja2 2.9.6 to easy-install.pth file

Installed /home/iamcxl/my/flask/myproject/env/lib/python2.7/site-packages/Jinja2-2.9.6-py2.7.egg
Searching for Werkzeug>=0.7
Reading https://pypi.python.org/simple/Werkzeug/
Downloading https://pypi.python.org/packages/56/41/c095a77eb2dd69bf278dd664a97d3416af04e9ba1a00b8c138f772741d31/Werkzeug-0.12.2.tar.gz#md5=e385b2c5a7193cff24c689b31e1124dc
Best match: Werkzeug 0.12.2
Processing Werkzeug-0.12.2.tar.gz
Writing /tmp/easy_install-_Be79K/Werkzeug-0.12.2/setup.cfg
Running Werkzeug-0.12.2/setup.py -q bdist_egg --dist-dir /tmp/easy_install-_Be79K/Werkzeug-0.12.2/egg-dist-tmp-naE6Xp
no previously-included directories found matching 'docs/_build'
no previously-included directories found matching 'docs/_themes'
warning: no previously-included files matching '*.py[cdo]' found anywhere in distribution
warning: no previously-included files matching '__pycache__' found anywhere in distribution
warning: no previously-included files matching '*.so' found anywhere in distribution
warning: no previously-included files matching '*.pyd' found anywhere in distribution
creating /home/iamcxl/my/flask/myproject/env/lib/python2.7/site-packages/Werkzeug-0.12.2-py2.7.egg
Extracting Werkzeug-0.12.2-py2.7.egg to /home/iamcxl/my/flask/myproject/env/lib/python2.7/site-packages
Adding Werkzeug 0.12.2 to easy-install.pth file

Installed /home/iamcxl/my/flask/myproject/env/lib/python2.7/site-packages/Werkzeug-0.12.2-py2.7.egg
Searching for MarkupSafe>=0.23
Reading https://pypi.python.org/simple/MarkupSafe/
Downloading https://pypi.python.org/packages/4d/de/32d741db316d8fdb7680822dd37001ef7a448255de9699ab4bfcbdf4172b/MarkupSafe-1.0.tar.gz#md5=2fcedc9284d50e577b5192e8e3578355
Best match: MarkupSafe 1.0
Processing MarkupSafe-1.0.tar.gz
Writing /tmp/easy_install-X6KyDo/MarkupSafe-1.0/setup.cfg
Running MarkupSafe-1.0/setup.py -q bdist_egg --dist-dir /tmp/easy_install-X6KyDo/MarkupSafe-1.0/egg-dist-tmp-F7kKiV
creating /home/iamcxl/my/flask/myproject/env/lib/python2.7/site-packages/MarkupSafe-1.0-py2.7-linux-x86_64.egg
Extracting MarkupSafe-1.0-py2.7-linux-x86_64.egg to /home/iamcxl/my/flask/myproject/env/lib/python2.7/site-packages
Adding MarkupSafe 1.0 to easy-install.pth file

Installed /home/iamcxl/my/flask/myproject/env/lib/python2.7/site-packages/MarkupSafe-1.0-py2.7-linux-x86_64.egg
Finished processing dependencies for Flask

0x05. 测试Flask环境

  • 0x01. 新建一个hello.py文件
    (env) iamcxl@iamcxl-ThinkPad-T450:~/pi/flask/myproject$ emacs hello.py

  • 0x02. copy下面的代码

from flask import Flask
app = Flask(__name__)

@app.route('/')
def hello_world():
    return "Hello World!"

if __name__ == '__main__':
    app.run()
  • 0x03. 运行上面的代码

(env) iamcxl@iamcxl-ThinkPad-T450:~/pi/flask/myproject$ python hello.py
* Running on http://127.0.0.1:5000/ (Press CTRL+C to quit)

  • 0x04. 通过浏览器访问http://127.0.0.1:5000/
    看到浏览器显示: hello world!

  • 0x05. 局域网内其它电脑访问

app.run(host='0.0.0.0')
  • 0x05. 开启debug模式
app.debug = True
app.run()
or
app.run(debug=True)

环境搭建成功!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值