服务器运行当显示

E:\pycharm\python\venv\Scripts\python.exe E:/pycharm/python/协议/机器人聊天服务器.py
开始监听
accept

说明服务器运行成功  之后运行客户端,输入“命令”

E:\pycharm\python\venv\Scripts\python.exe E:/pycharm/python/协议/机器人聊天客户端.py
你好
服务器:你好,以后请多指教
见到你真开心
服务器:希望我每天都能让你开心   

服务器代码:

#导入python包
import socket #内置
import requests,json
# ip地址 端口号
ip_port = ("127.0.0.1",8000)
# 实例化socket对象
sk = socket.socket()
sk.bind(ip_port) #绑定地址
print("开始监听")
sk.listen(5) #监听请求
print("accept")
def getInfo(text): #图灵机器人做好的文档信息
url = "http://openapi.tuling123.com/openapi/api/v2"
data = {
"reqType":0,
"perception": {
"inputText": {
"text": "%s"%text
}
},
"userInfo": {
"apiKey": "2d94f79c11ea446ea2122bd9c77ae104", #自己的密钥
"userId": "2dc32cc0de96c766"
}
}
data = json.dumps(data)
res = requests.post(url=url,data=data,headers={
'content-type':'application/json'
})
res = json.loads(res.text)
res2 = res['results'][0]['values']['text']
return res2 conn,addr = sk.accept() #响应请求
while True: #给死循环
data = conn.recv(1024).decode() #接受客户端 请求1
text = getInfo(data) #在文档中将接受的消息匹配
conn.send(text.encode()) # 将文档中对应的回复 发送请求2

  

客户端代码:

import socket
sk = socket.socket() #实例化socket对象
try:
sk.connect(("127.0.0.1",8000)) # 连接成功
except:
print("连接服务器失败")
while True: #死循环
data = input("").encode() #input输入框让其客户端第一次输入
sk.send(data) #发送请求1
res = sk.recv(1024).decode() #接受请求2
print("服务器:%s"%res) #输出服务器的回复

 在客户端与机器人聊天的功能就实现了!

服务器与客户端连接 & 聊天机器人的更多相关文章

  1. (3.10)mysql基础深入——mysqld 服务器与客户端连接过程 源码分析【待写】

    (3.10)mysql基础深入——mysqld 服务器与客户端连接过程 源码分析[待写]

  2. Oracle 局域网布置数据库服务器,客户端连接提示TNS:无监听器的解决实现

    Oracle布置在局域网中的服务器的时候,用本地PL SQL 链接没有丝毫的问题. 但是,如果用远程客户端的PL SQL 链接的时候却出现了“TNS:无监听器”的问题. 首先,就是进行了服务器端的监听 ...

  3. ESP8266开发综合篇第十四节(LUA)-8266作为TCP服务器,Android客户端连接,显示温湿度,控制继电器

    前几节先略过,我先补充上大部分人迫切的需求 编写Android TCP客户端  用Android Studio 先做一下界面 然后放一个输入对话框,因为没有显示出来这个控件.所以就手写 剩下的自己研究 ...

  4. redis学习教程四《管理、备份、客户端连接》

    redis学习教程四<管理.备份.客户端连接>  一:Redis服务器命令 Redis服务器命令 下表列出了与Redis服务器相关的一些基本命令. 序号 命令 说明 1 BGREWRITE ...

  5. Mysql从客户端连接服务器连不上的问题

    Mysql从客户端连接服务器连不上的问题   公司要用Mysql做一个测试,开始在自己的本地建一个Mysql数据库自己本地的程序再连上去,没有遇到过连接不上的问题.这次数据库在服务器上,从本地客户端连 ...

  6. 用友U8客户端连接不上服务器全攻略

    用友U8客户端连接不上服务器全攻略 http://www.enet.com.cn2009年09月23日09:26 来自论坛 [导读]:如果网络不通,就让用户查找网络原因 检查步骤: 1.网络是否通? ...

  7. C# Winform Soket 网络编程 多个客户端连接服务器并返回客户端操作请求

    2017.8.2 服务器: #region 参数与集合 /// <summary> /// 客户端IP /// </summary> string clientIP; /// ...

  8. 使用 WebSocket 客户端连接 MQTT 服务器

    简介 近年来随着 Web 前端的快速发展,浏览器新特性层出不穷,越来越多的应用可以在浏览器端或通过浏览器渲染引擎实现,Web 应用的即时通信方式 WebSocket 得到了广泛的应用. WebSock ...

  9. C/S模式客户端连接服务器连接不上的问题

    C/S模式客户端连接服务器连接不上的问题 1.服务器电脑防火墙关闭 2.服务器端SQL SERVER2008R: 配置工具--SQL SERVER配置管理器 MSSQLSERVER协议.客户端协议(S ...

随机推荐

  1. How to emulate a Raspberry Pi on your PC

    How to emulate a Raspberry Pi on your PC I am very interested in trying simulators and emulators for ...

  2. css基础面试题

    1 介绍一下标准的CSS的盒子模型?与低版本IE的盒子模型有什么不同的? 标准盒子模型:宽度=内容的宽度(content)+ border + padding + margin低版本IE盒子模型:宽度 ...

  3. c# 笔记cookie

    if (Request.Cookies["svpoint"] != null) { Request.Cookies[].s_SvcID.ToString(); } else { H ...

  4. 按Enter登录,Esc退出

    回车登录,下图处,选择登录按钮的方法 下图是按ESC

  5. 模板std::mutex用法:

    std::mutex mymutex; std::lock_guard<std::mutex> lock(mymutex);

  6. CentOS与Win7远程桌面互通

    在CentOS上装上Rdesktop即可连接Windows,如下命令,第一次执行时报错,提示CredSSP required by server. [root@localhost ~]# rdeskt ...

  7. windows系统开启虚拟化

    电脑如何开启虚拟进化 当VMware安装系统时,如果电脑没有开启虚拟化,在安装过程中,会发生错误. 查看电脑是否开启虚拟化,[任务管理器] 正常情况如上图,而当虚拟化没有开启的时候,如何解决? int ...

  8. excel VBA动态链接数据库

    最近车间制造部有需求,需要通过excel填写的ID获取数据库中的某个取值.研究了一下VBA,简要记录一下代码,仅供参考. Function GETPMAX(SID As String) As Stri ...

  9. 【转载】opencv实现人脸检测

    全文转载自CSDN的博客(不知道怎么将CSDN的博客转到博客园,应该没这功能吧,所以直接复制全文了),转载地址如下 http://blog.csdn.net/lsq2902101015/article ...

  10. anaconda中安装TensorFlow的方法

    作为一个新手党加手残党真的折腾了好久才搞定,记录一下. step1:在anaconda prompt终端中输入 pip3 install -i https://pypi.tuna.tsinghua.e ...