python virtualenv flask

来源:互联网 发布:sql删除语句 编辑:程序博客网 时间:2024/06/05 16:31

一、virtualenv用于构建以独立的python环境。(害怕安装了一堆东西之后,把现有的python环境搞坏了)

1、pip install virtualenv

2、cd D:\svn\py_env\

      virtualenv --distribute flask_evn

      找个地方,创建一个虚拟环境

3、cd flask_evn\Scripts
   activate
   or deactivate
4、激活虚拟环境后,当前cmd变成了这个样子,然后可以切换目录到其它地方,编写运行python文件了
(flask_evn) D:\svn\py_env\flask_evn\workspace>


二、Flask是一个web微服务开发框架

1、在虚拟环境的这个cmd中,pip install Flask,Flash就只被安装到这个环境中,不影响其它python环境。

2、编写python代码

hello1.py

from flask import Flask
app = Flask(__name__)

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

if __name__ == '__main__':
    app.run()

----------------------------------------

hello2.py

from flask import Flask
app = Flask(__name__)

@app.route('/hello/<name>')
def hello_world(name):
    return 'Hello World! %s' % name

@app.route('/getid/<int:id>')
def getId(id):
    return 'Hello World! %s' % (id*2)
   
if __name__ == '__main__':
    app.run()
----------------------------------------------

hello3.py

#coding=utf-8
from flask import Flask
from flask import request

app = Flask(__name__)

#test http://127.0.0.1:5000/hello/
#test http://127.0.0.1:5000/hello/?q=bbc
#test curl -s -d q=bbc http://127.0.0.1:5000/hello/
"""
 Flask建议使用像/hello/这样两边含有斜线的url, 这样当访问/hello时,浏览器会自动增加/到/hello/
"""
@app.route('/hello/', methods=['GET','POST'])
def hello_world():
    print request.path
    if request.method == 'POST':
        searchword = request.form['q']
    else:
        searchword = request.args.get('q', 'default')
    return 'Hello World! %s' % searchword

if __name__ == '__main__':
    app.run()

-----------------

三、用awk+curl 批量发送post

awk '{if(!NF) {next} else {  print "-s -d q="$1" http://127.0.0.1:5000/hello/"  } }' 3.txt|xargs curl

0 0
原创粉丝点击