【跟我一起学python】2.实现TCP服务器
本帖最后由 xiaoye 于 2016-1-10 22:11 编辑==============================
| 作者:i3esn0w |
++++++++++++++++++++++++++++++
| 博客:此处和谐 |
++++++++++++++++++++++++++++++
| 转载请注明出处 |
==============================
此系列前提是看着已经有了python的基础语法知识,这个我想应该没什么问题,现在网上的python的教程也是一百度就一大堆,所以在此不在谈论基础,请各位读者自行补充基础知识
按照惯例还是先来看一段代码:
#encoding:utf-8
import socket
if __name__=="__main__":
target_host="0.0.0.0"
target_port=8888
server=socket.socket(socket.AF_INET,socket.SOCK_STREAM)
server.bind((target_host,target_port))
server.listen(5)
client,addr=server.accept()
text=client.recv(1024)
client.send('hello you are')
print text
print addr
首先我们定义了需要监听的IP地址以及端口,这里的0.0.0.0表示监听所有地址,如果需要监听指定IP上的端口,可以在这里设置
然后依旧是创建一个套接字,然后需要将这个套接字绑定在我们需要监听的地址上面,紧接着可以连接的客户端的最大数量,这里为5个,看者可以按照自己的需求自己定义,然后调用accept方法,这个方法会返回客户端的句柄(这里我不知道应该怎么称呼这个东西,VC是叫做句柄,所以这里我也叫它做句柄,如果看者觉得这里有什么问题可以告诉我)
然后就是调用客户端句柄进行接受数据,发送数据的操作了
来看一下运行(客户端可以使用已经写好的那个,稍作修改就可以使用了)
https://www.isbug.net/wp-content/uploads/2015/12/QQ%E6%88%AA%E5%9B%BE20151207203429-288x300.png
然后看一下客户端返回的结果
https://www.isbug.net/wp-content/uploads/2015/12/QQ%E6%88%AA%E5%9B%BE201512072034291-300x292.png
可以看到已经成功返回
当然这里仅仅是一个最简单的通讯,如果看者需要实现更复杂的功能,如一个聊天室之类的应用程序,可以在这段程序上在做修改,比如加上多线程之类的
支持中国红客联盟(ihonker.org) 学习学习技术,加油! 支持,看起来不错呢! 学习学习技术,加油! 支持,看起来不错呢! 支持,看起来不错呢! 感谢楼主的分享~