|
|
马上注册,结交更多好友,享用更多功能,让你轻松玩转新大榭论坛!
您需要 登录 才可以下载或查看,没有账号?注册
x
以下为 webrobot.py 代码
! G5 O! |2 S6 ~! _3 X% x- from flask import Flask,render_template #导入网页模板支持模块- u1 r* T. Z7 J1 K/ X9 R& O3 V
- from flask_script import Server,Manager #导入Flask的服务器管理扩展模块/ ~* t; k/ z/ t) t: [+ I+ V
- from flask_bootstrap import Bootstrap #导入网页模板工具模块' V3 h! J8 g- c4 U( e& |- ~
- from flask_moment import Moment
9 Q6 x: S* i% K4 | - from flask_wtf import FlaskForm #导入表单模块. w: M% C3 r8 _$ p5 `6 S. m
- from wtforms import StringField,SubmitField #导入表单相关模块4 b h W6 i( S, }) H8 _! S
- from wtforms.validators import Required #导入表单相关模块& g9 N! D) A2 M( X* N. O
- 6 a' k K) ^5 X
- import sys; X, f0 W9 q' N0 ^- [
- sys.path.insert(0,"../")
: b/ n- L5 W7 a/ k9 a( v { - 7 d4 X- N1 N$ ?3 M# p* l
- import aiml #导入aiml模块
" Q1 o0 }) O/ q' g6 |, K - k=aiml.Kernel() #创建aiml聊天机器人5 j4 Q% t$ _6 N, T/ F8 I/ ~
- k.learn("cn-startup.xml") #读取语科库 C8 n; ^/ `0 z# s% j- c5 B
- k.respond("load aiml cn")
! g: d- ~7 D* F6 m8 Z% I0 J - k.respond("start")
0 |; l B. v5 h/ B) i - 4 ^) |, c/ R' P1 T" u4 Z
- app=Flask(__name__)3 a' V' o* l2 R) D
- app.config['SECRET_KEY']='hard to guess string'0 T2 o3 C( T$ b/ B2 B8 {
5 `! I. m, u/ Z( `- manager=Manager(app)
. Q2 X2 r- b( X# e9 K- ? - server=Server(host="0.0.0.0",port=80,threaded=True)/ p+ g2 L0 i3 h N2 y
- manager.add_command("runserver",server)
3 i3 W- k$ \$ J3 C, t* \ - bootstrap=Bootstrap(app)
7 o. @7 Z# c1 z0 Q7 _ - moment=Moment(app)( e, w1 L1 V/ @* B- H
- % ~ n) p8 G! s n
- ( t* @5 \2 E1 x) Y k( z$ c
- class NameForm(FlaskForm): #网页表单类8 }0 N: H. j6 C4 U/ m9 i
- name=StringField('请开始交谈:',validators=[Required()]) #文本输入框; B; O! X6 P6 J6 B0 y: m8 \
- submit=SubmitField('提交') #提交按钮
* U: p1 q( Q3 H9 W, ^. ~2 W1 a - " q( H3 _0 F$ _8 `$ I6 w- \8 t
- 3 U7 \" x: \* \
- @app.route('/',methods=['GET','POST'])
' L9 e- s c1 l - def index():
, t3 J& L2 L2 R4 `- ~" X& p. T5 i - name=''
6 k; D! Q9 j! @0 ^- i& X - form=NameForm() #创建网页表单2 \2 E% S4 g1 C" R q" R# ]
- if form.validate_on_submit():
% H- B* n1 X/ K: c5 h( | - name=form.name.data5 Q! z7 K2 s- n8 v
- form.name.data=''1 J9 ~( |) Y' {' q6 M
- return render_template('index.htnl',form=form,name=k.respond(name))
! J) N+ G5 h% z" H$ Q - # 调用respond接口进行聊天9 S: l1 o( O6 i8 L) H- j/ G L% U
- # 处理表单提交数据后调用index.hml网页模板, ]: p ^' p2 i) K" E
-
; {# X/ T& R9 ~6 {2 _ - if __name__ == '__main__':
1 g9 L0 X5 k; ^/ w& \ - manager.run()
复制代码 |
|