Flask-最简单的Python http服务框架使用
环境准备
Python + pip + Flask
sudo easy_install pip
sudo pip install flask
代码如下(做了个jieba分词的服务)
# encoding=utf-
from flask import request
from flask import Flask
import jieba
import jieba.posseg as pseg
import time
import sys
import json app = Flask(__name__)
reload(sys)
sys.setdefaultencoding('utf8') @app.route('/jiebaPsegTest', methods=['POST', 'GET'])
def jiebaPsegTest():
resultObj = {}
resultList = []
content = request.args.get('content', '')
if content.strip() == '':
resultObj = result('', '分词文本不能为空', resultList)
else:
seg_list = pseg.cut(content)
for word, flag in seg_list:
if flag == 'company':
resultList.append(word) resultObj = result('', '分词成功', resultList)
return json.dumps(resultObj, ensure_ascii=False) @app.route('/jiebaInit', methods=['POST', 'GET'])
def jiebaInit():
app.logger.info('---------------------init------------------')
app.logger.debug("=========start-time" + time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(time.time())))
file_name = "/Users/FengZhen/Desktop/python/flask/static/Company.txt"
jieba.load_userdict(file_name)
app.logger.debug("=========end-time" + time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(time.time())))
return "jiebaInit done" @app.route('/jiebaAddWord', methods=['POST', 'GET'])
def jiebaAddWord():
content = request.args.get('content', '')
jieba.add_word(content, , 'company')
return "jiebaAddWord done" @app.route('/jiebaTest', methods=['POST', 'GET'])
def jiebaTest():
content = request.args.get('content', '')
seg_list = jieba.cut(content)
for seg in seg_list:
print(seg)
return "deal done result" # 返回对象
def result(code, msg, data):
resultDic = {}
resultDic['code'] = code
resultDic['msg'] = msg
resultDic['data'] = data
return resultDic if __name__ == '__main__':
app.run('0.0.0.0', port=, debug=True)
Flask官方文档:http://docs.jinkan.org/docs/flask/quickstart.html#a-minimal-application
Flask-最简单的Python http服务框架使用的更多相关文章
- 推荐一款 Python 微服务框架 - Nameko
1. 前言 大家好,我是安果! 考虑到 Python 性能及效率性,Python Web 端一直不温不火,JAVA 和 Golang 的微服务生态一直很繁荣,也被广泛用于企业级应用开发当中 本篇文章 ...
- 简单的Python GUI界面框架
Python开发GUI界面, 可以使用pyQT或者wxpython. 不过不论pyQT还是wxpython都需要比较多的学习成本.Python工程往往是用于快速开发的,有些时候引入pyQT,wxpyt ...
- 简单Spring Cloud 微服务框架搭建
微服务是现在比较流行的技术,对于程序猿而言,了解并搭建一个基本的微服务框架是很有必要滴. 微服务包含的内容非常多,一般小伙伴们可以根据自己的需求不断添加各种组件.框架. 一般情况下,基本的微服务框架包 ...
- 一个简单的python线程池框架
初学python,实现了一个简单的线程池框架,线程池中除Wokers(工作线程)外,还单独创建了一个日志线程,用于日志的输出.线程间采用Queue方式进行通信. 代码如下:(不足之处,还请高手指正) ...
- 非常简单的Python HTTP服务
如果你急需一个简单的Web Server,但你又不想去下载并安装那些复杂的HTTP服务程序,比如:Apache,ISS等.那么, Python 可能帮助你.使用Python可以完成一个简单的内建 HT ...
- 【Python】Python 微服务框架 nameko
nameko: 1.支持服务发现.负载均衡 2.支持依赖自动注入,使用很方便 3.缺点:超时.限速.权限等机制不完善 代码示例:https://github.com/junneyang/nameko- ...
- greenev —— Python 异步网络服务框架
greenev是一个基于greenlet协程,事件驱动,非阻塞socket模型的Python网络服务框架,它使得可以编写同步的代码,却得到异步执行的优点. 本项目受到gevent, openresty ...
- python 微服务方案
介绍 使用python做web开发面临的一个最大的问题就是性能,在解决C10K问题上显的有点吃力.有些异步框架Tornado.Twisted.Gevent 等就是为了解决性能问题.这些框架在性能上有些 ...
- Python 【web框架】之Flask
flask 是Python实现的轻量级web框架.没有表单,orm等,但扩展性很好.很多Python web开发者十分喜欢.本篇介绍flask的简单使用及其扩展. 文中示例源码已经传到github:h ...
随机推荐
- Reference counted objects
Reference counted objects · netty/netty Wiki https://github.com/netty/netty/wiki/Reference-counted-o ...
- Spark源码分析 -- TaskScheduler
Spark在设计上将DAGScheduler和TaskScheduler完全解耦合, 所以在资源管理和task调度上可以有更多的方案 现在支持, LocalSheduler, ClusterSched ...
- 如何在 windows 配置 libtorch c++ 前端库?
如何在 windows 配置 libtorch c++ 前端库? 下载 pytorch 已经编译好的库: 此库不带 gpu,主要方便演示.支持 win7 win10 系统. 下载地址:https:// ...
- 前端基础之BOM和DOM和三个小示例(计时器、搜索框、select联动)
一.BOM和DOM JavaScript分为 ECMAScript,DOM,BOM. BOM(Browser Object Model)是指浏览器对象模型,它使 JavaScript 有能力与浏览器进 ...
- Mybatis框架学习总结-调用存储过程
设计需求 查询数据库,查询得到男性或女性的数量,如果传入的参数是0查询女性,否则查询男性. 准备数据库表和存储过程 1.准备person表: CREATE TABLE person( id INT P ...
- java_基础——用代码编译.java文件+加载class文件
[本文介绍] 本文不是深入理解和使用java编译器,只是在代码里编译.java文件的helloWorld.这种技术还是蛮有意思的,说不定在将来的某些只能化项目会运用到!^_^ [简单编译的流程] [j ...
- Kafka笔记整理(二):Kafka Java API使用
下面的测试代码使用的都是下面的topic: $ kafka-topics.sh --describe hadoop --zookeeper uplooking01:,uplooking02:,uplo ...
- ambari关于ranger的一个大坑----端口永远是3306,需要手动修改
ambari关于ranger的一个大坑----端口永远是3306 这个坑是我在搭建ambari环境的时候发现的,我并没有找到原因,求助同事,然后一步步循着蛛丝马迹和试探,终于解决了,然而也揭露了amb ...
- list_for_each_entry解析
双向链表及链表头: 建立一个双向链表通常有一个独立的用于管理链表的链表头,链表头一般是不含有实体数据的,必须用INIT_LIST_HEAD()进行初始化,表头建立以后,就可以将带有数据结构的实体链表成 ...
- PAT 1110 Complete Binary Tree[比较]
1110 Complete Binary Tree (25 分) Given a tree, you are supposed to tell if it is a complete binary t ...