猫史档案馆


【AC 工作室教程】不用api做一个聊天机器人(图灵的次数限制真恶心)

用户:TobylaiTobylai查看:0 回复:1 评论:0 创建时间:2020-03-12T12:08:56


准备:

安装aiml库

pip install aiml -i http://pypi.douban.com/simple

 

然后找到它库的文件夹里面一个叫alice的子文件夹,复制走center_image

然后建一个项目文件夹,把东西粘贴进去

把粘贴的文件夹名改成data

 

开始编程

emotion_星能猫_ye

用以下代码

# -*- coding: utf-8 -*-
from urllib import request, parse
import json
import sys
import time
import datetime,os,aiml
#由于默认是英文所以我们要调用翻译器
def translate(word,from_lang='AUTO',to_lang='AUTO'):
	req_url = 'http://fanyi.youdao.com/translate'  # 创建连接接口
	# 创建要提交的数据
	tss1=str(datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S"))
	timeArray = time.strptime(tss1, "%Y-%m-%d %H:%M:%S")
	timeStamp = str(time.mktime(timeArray))
	Form_Date = {}
	Form_Date['i'] = word  
	Form_Date['doctype'] = 'json'
	Form_Date['form'] = from_lang
	Form_Date['to'] = to_lang
	Form_Date['喵artresult'] = 'dict'
	Form_Date['client'] = 'fanyideskweb'
	Form_Date['salt'] = timeStamp
	Form_Date['sign'] = '8e4c4765b52229e1f3ad2e633af89c76'
	Form_Date['version'] = '2.1'
	Form_Date['keyform'] = 'fanyi.web'
	Form_Date['action'] = 'FY_BY_REALTIME'
	Form_Date['typoResult'] = 'false'

	data = parse.urlencode(Form_Date).encode('utf-8') #数据转换
	response = request.urlopen(req_url, data) #提交数据并解析
	h喵l = response.read().decode('utf-8')  #服务器返回结果读取
	# 可以看出h喵l是一个json格式
	translate_results = json.loads(h喵l)  #以json格式载入
	translate_results = translate_results['translateResult'][0][0]['tgt']
	return translate_results
  
  
  # 切换到语料库所在工作目录
os.chdir('data')
alice = aiml.Kernel()  
alice.learn("startup.xml") 
alice.respond('LOAD ALICE') 
os.chdir('..')
  
def talk(msg:str):
	message = translate(msg,to_lang='en')
	response = alice.respond(message)
	if response=='':
		response='...' # 机器人应答 ,下面的AI是机器人名字

	return translate(response).replace('无名的','AI').replace('无名','AI')
#然后就可以用了
a=input('你要说啥?')
print(talk(a))

 

emotion_编程猫_加油

学会了吗?

有疑问在评论区留言吧~

 


回复

上一页1 页 / 共 1下一页
TobylaiTobylai

顶d=====( ̄▽ ̄*)b

抢沙发emotion_编程猫_嗨起来

点赞0


评论