博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
python网络编程(七)
阅读量:7239 次
发布时间:2019-06-29

本文共 1341 字,大约阅读时间需要 4 分钟。

应用:模拟QQ聊天

客户端参考代码

#coding=utf-8from socket import *# 创建sockettcpClientSocket = socket(AF_INET, SOCK_STREAM)# 链接服务器serAddr = ('192.168.1.102', 7788)tcpClientSocket.connect(serAddr)while True:    # 提示用户输入数据    sendData = raw_input("send:")    if len(sendData)>0:        tcpClientSocket.send(sendData)    else:        break    # 接收对方发送过来的数据,最大接收1024个字节    recvData = tcpClientSocket.recv(1024)    print 'recv:',recvData# 关闭套接字tcpClientSocket.close()

服务器端参考代码

#coding=utf-8from socket import *# 创建sockettcpSerSocket = socket(AF_INET, SOCK_STREAM)# 绑定本地信息address = ('', 7788)tcpSerSocket.bind(address)# 使用socket创建的套接字默认的属性是主动的,使用listen将其变为被动的,这样就可以接收别人的链接了tcpSerSocket.listen(5)while True:    # 如果有新的客户端来链接服务器,那么就产生一个信心的套接字专门为这个客户端服务器    # newSocket用来为这个客户端服务    # tcpSerSocket就可以省下来专门等待其他新客户端的链接    newSocket, clientAddr = tcpSerSocket.accept()    while True:        # 接收对方发送过来的数据,最大接收1024个字节        recvData = newSocket.recv(1024)        # 如果接收的数据的长度为0,则意味着客户端关闭了链接        if len(recvData)>0:            print 'recv:',recvData        else:            break        # 发送一些数据到客户端        sendData = raw_input("send:")        newSocket.send(sendData)    # 关闭为这个客户端服务的套接字,只要关闭了,就意味着为不能再为这个客户端服务了,如果还需要服务,只能再次重新连接    newSocket.close()# 关闭监听套接字,只要这个套接字关闭了,就意味着整个程序不能再接收任何新的客户端的连接tcpSerSocket.close()

 

转载于:https://www.cnblogs.com/leecoffee/p/9035501.html

你可能感兴趣的文章
对Promise中的resolve,reject,catch的理解
查看>>
NFS挂载异常 mount.nfs: Input/output error
查看>>
爬虫 Day03
查看>>
内存池的原理及实现
查看>>
phpqrcode生成动态二维码简单实例
查看>>
python-函数
查看>>
Scrapy反爬
查看>>
(十三) 整合spring cloud云架构 - SSO单点登录之OAuth2.0 根据token获取用户信息(4)
查看>>
Java-日历表
查看>>
GLPaint in OpenGL ES 2.0
查看>>
CocoaAsyncSocket学习
查看>>
关于form.item不兼容的问题
查看>>
poj Supermarket
查看>>
常用变量的获取
查看>>
洛谷9月月赛round2
查看>>
Lazy的SDL教程 翻译----Lesson 22 Timing
查看>>
C#调用带输出参数的mysql存储过程
查看>>
两个序列中位数算法c语言,PAT 2-13 两个有序序列的中位数(C语言实现)
查看>>
android 上下左右滑动的表格,适用小程序的表格table,冻结行,冻结列,可左右,上下滑动...
查看>>
HTML表单滚动文本框,table表格,form表单,select下拉列表,textarea文本域
查看>>