python—多任务版udp聊天机器人

将多任务(多线程)引入到udp聊天机器人,可以实现同时发送消息和接收消息

 1 import socket
 2 import threading
 3
 4
 5 def udp_send(udp_socket,ip,port):
 6     while True:
 7         try:
 8             # 获取发送的信息
 9             data = input(‘请输入要发送的信息:‘)
10             udp_socket.sendto(data.encode(‘gbk‘), (ip,port))
11
12         except Exception as erro:
13             print(‘错误类型:‘,erro)
14
15
16 def udp_recv(udp_socket):
17     while True:
18         # 接收信息
19         recv_data = udp_socket.recvfrom(1024)
20         print(‘接收的信息:‘,recv_data[0].decode(‘gbk‘))
21
22
23 def main():
24
25     # 创建UDP套接字
26     udp_socket = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
27
28     # 绑定本地信息
29     udp_socket.bind((‘‘,8080))
30
31     # 获取对方通信地址
32     ip = input(‘请输入对方的ip:‘)
33     port = int(input(‘请输入对方的端口port:‘))
34
35     # 创建线程
36     t1 = threading.Thread(target=udp_send, args=(udp_socket, ip, port))
37     t2 = threading.Thread(target=udp_recv, args=(udp_socket,))
38     t1.start()
39     t2.start()
40
41
42 if __name__ == ‘__main__‘:
43     main()

原文地址:https://www.cnblogs.com/summer1019/p/10430218.html

时间: 2024-08-08 09:17:45

python—多任务版udp聊天机器人的相关文章

案例:多任务版udp聊天器

说明 编写一个有2个线程的程序 线程1用来接收数据然后显示 线程2用来检测键盘数据然后通过udp发送数据 要求 实现上述要求 总结多任务程序的特点 参考代码: import socket import threading def send_msg(udp_socket): """获取键盘数据,并将其发送给对方""" while True: # 1. 从键盘输入数据 msg = input("\n请输入要发送的数据:") # 2

如何优雅的用Python玩转语音聊天机器人

一名极客运维人员,走在脑洞大开的路上.... Python聊天机器人:可以感应人是否存在,识别语音,通过图灵API语音回答 -------------------------上图镇楼---------------------------- [详细攻略] 所需硬件: 树莓派B+ 人体红外线感应模块 内置麦克风摄像头(实测树莓派免驱淘宝链接) 申请API: 百度语音api 图灵api 语音聊天机器人实现原理:当有人来到跟前时-->触发聊天功能,开始以每2s检测录制语音-->通过百度语音api合成文

用python写一个微信聊天机器人

# -*- coding: utf-8 -*- """ package.module ~~~~~~~~~~~~~~ 一个微信机器人程序 微信客户端itchat: http://itchat.readthedocs.io/ 机器人聚合API: ## params - info 发给机器人的信息 - dtype json|xml - loc 地点 - userid 1-32位,可以用于上下文关联 http://op.juhe.cn/robot/index?info=%E5%8C%

python 实现简单语音聊天机器人

1 # -*- coding:utf-8 -*- 2 import sys 3 import requests 4 import json 5 import mp3play 6 import time 7 8 def talk(info): 9 appkey = "e5ccc9c7c8834ec3b08940e290ff1559" 10 headers = { 11 'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; Win64; x64) Appl

【智能聊天机器人】小花猫的成长之路——3.雏形(让你立马拥有一个自己的智能聊天机器人)

大家好,今天不废话了,直接来给大家分享一下如何实现一个网页版智能聊天机器人的基本功能,也就是标题说的:雏形. 首先,上一篇文章已经提过了小花猫的大脑:图灵机器人API接口的介绍.获取和使用.(我为了写心得,特地申请了一个新的KEY) 点击下边的链接试试吧: http://www.tuling123.com/openapi/api?key=bad38ba658622caef62828496c662135&userid=0&info=你好 嘿嘿,是不是看到了一些令人激动的回复信息啦?修改inf

3.C#面向对象基础聊天机器人

基于控制台的简单版的聊天机器人,词库可以自己添加. 源码如下: using System; using System.Collections.Generic; using System.Text; namespace 面向对象聊天机器人1.0 { class Program { static void Main(string[] args) { 机器人 r1 = new 机器人(); r1.Name = "小I"; r1.Eat(5); r1.SayHello(); while (tr

Python进阶开发之网络编程,socket实现在线聊天机器人

系列文章 √第一章 元类编程,已完成 ; √第二章 网络编程,已完成 ; 本文目录 什么是socket?创建socket客户端创建socket服务端socket工作流程图解socket公共函数汇总实战:搭建在线聊天机器人 . 什么是socket? 说到网络编程,难免要提到socket? 那什么是socket呢,中文名叫"套接字",更难理解了吧. 通俗来讲,socket表示一个网络连接,通过这个连接,使得主机间或者一台计算机上的进程间可以通讯. 不管是不同主机,还是同一主机.既然是通信,

UDP聊天器 服务器版 支持离线消息 支持净网过滤

#服务器端 #========================================================== #导入模块import socketimport threadingimport re#设置全局变量flagflag = 0#设置离线消息列表msg_list = []#创建udp套接字udp_server_socket = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)#绑定ip端口udp_server_socke

聊天机器人改写版

/*改写的聊天机器人之华山论剑,写着玩儿的,还很粗劣,有待完善*/ using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace ConsoleApplication2 { class sword { static void Main(string[] args) { int fullBlood = 10; while (true) { Console.WriteLi