|
马上注册,结交更多好友,享用更多功能,让你轻松玩转新大榭论坛!
您需要 登录 才可以下载或查看,没有账号?注册
x
以下为 webrobot.py 代码
, `2 d+ a3 j# C1 f* N1 y+ O- ]2 y- from flask import Flask,render_template #导入网页模板支持模块
D$ S# Q' `. ]; {4 S$ f - from flask_script import Server,Manager #导入Flask的服务器管理扩展模块- I1 I5 H8 O& K/ ~% K- W
- from flask_bootstrap import Bootstrap #导入网页模板工具模块
, K2 ^, t' K* v7 Y$ y$ j - from flask_moment import Moment' ?, @! ~$ T! J6 P/ f3 q0 m
- from flask_wtf import FlaskForm #导入表单模块: H% n7 U1 q# ^ V- l8 _/ p: `# [# A
- from wtforms import StringField,SubmitField #导入表单相关模块
$ s3 |$ c; ]* A+ r) X/ s+ c) o - from wtforms.validators import Required #导入表单相关模块
I/ H R4 l" l6 C$ O# a/ w/ H
' R0 d* H) B! W- import sys
' V+ L% s% A: e0 n - sys.path.insert(0,"../")9 E5 Q. d5 g( Q1 e5 W; c
- & G2 Q# b5 g1 S
- import aiml #导入aiml模块
# |$ L$ E! h7 K7 m - k=aiml.Kernel() #创建aiml聊天机器人# ^& L9 C$ _4 R' O/ P0 d
- k.learn("cn-startup.xml") #读取语科库
/ l1 z- ^/ @& x/ C! ^ - k.respond("load aiml cn")
y* G6 }$ n* p* G - k.respond("start"), ?( C* X7 U, U$ G
- Y0 D5 c) Z. ?7 ?3 f- app=Flask(__name__)0 \" T7 Q% F" K5 v
- app.config['SECRET_KEY']='hard to guess string'
# U- H i" }1 ?$ b; {% C - ' R2 R A# g; t& o0 i
- manager=Manager(app)8 g! | M- y7 g5 {# F- \& o
- server=Server(host="0.0.0.0",port=80,threaded=True)" v% Q5 N, B) W! m" l3 a
- manager.add_command("runserver",server)
- G+ p: ~' `# b8 L9 F6 L - bootstrap=Bootstrap(app)
8 n6 E; I. _9 r" \$ l; d* q - moment=Moment(app)$ p& T2 \& l- F, k; M6 u
- 0 `! E: d& s5 q }0 s' B( Z
- 7 v. `( v: I" O9 h- E# U
- class NameForm(FlaskForm): #网页表单类
: X. \* b! N5 t' W+ [4 j - name=StringField('请开始交谈:',validators=[Required()]) #文本输入框
" u2 X& L; c; C. T& T! S - submit=SubmitField('提交') #提交按钮* s6 N/ V. N& U. d& \# W) R- E
" ~1 `+ F3 z( O" p3 C( R& w
- S: @* R7 e1 m1 D- @app.route('/',methods=['GET','POST'])) l! N+ L8 h+ @0 L& G. E
- def index():- B( J& F2 F. W9 o' I
- name=''* r9 k+ `; _) x& r x
- form=NameForm() #创建网页表单
; |$ `( W! L; ?' W - if form.validate_on_submit():
5 Z2 a+ [3 ^8 Q7 a+ q/ E; m& X - name=form.name.data
0 s. D2 C7 t; c/ ?: X& T4 ?* o - form.name.data=''5 T4 B! R3 c2 i8 ^' n( |
- return render_template('index.htnl',form=form,name=k.respond(name))! T/ j# I J% L7 M
- # 调用respond接口进行聊天+ B, f( A3 H0 k- a
- # 处理表单提交数据后调用index.hml网页模板
7 v/ F! _/ p: _! b - ; C8 i: c& j9 a P6 a# ?/ ~/ n, N
- if __name__ == '__main__':9 Q! n4 e0 L+ o) T+ s
- manager.run()
复制代码 |
|