现在的位置: 主页 > 公司荣誉 > 文章正文

python socket模块学习

作者:成都渝祥金属丝网制品有限公司 来源:www.cdyuxiang.com 未知发布时间:2017-09-10 10:08:05
python socket模块学习 python socket模块学习:

1、socket:套接字。套接字基本上是两个端点的程序之间的“信息通道”,用于描述IP地址和端口,

是一个信息链的句柄,应用程序通过“套接字”向网络发出请求或者应答网络请求。

套接字包括两个:服务机套接字和客户机套接字。在创建一个服务器套接字后,让它等待连接。这样

它就在某个网络地址处(IP地址和一个端口号的组合)监听,知道有客户端套接字连接。连接完成后,

两者就可以进行交互了。

2、python socket类的实例化的三个参数:

a、地址族(默认为 socket.AF_INET)

b、流(默认为 socket.SOCK_STREAM)

或者数据报(默认为 socket.SOCK_DGRAM)

c、使用的协议(默认为0,使用默认值即可)

3、socket 运行或者使用流程:

服务器端:

a、创建套接字,绑定套接字到本地IP与端口

#socket.socket(socket.AF_INET,socket.SOCK_STREAM,0)

#s.bind()

bind()方法是将套接字绑定到地址,在AF_INET下,以元组(host,port)的形式表示地址。

b、开始监听连接

#s.listen()

listen(backlog)方法:开始监听TCP传入的连接,backlog指定在拒绝连接之前,操作系统可以挂起的

最大的连接数量。该值至少为1,大部分应用程序设为5就可以了。

c、进入循环,不断接受客户端的连接请求。

#s.accept() 接受TCP连接并返回(conn,address),其中conn是新的套接字对象,可以用来接收和发送数据。

address是连接客户端的地址。

d、然后接受传来的数据,并发送给对方数据

#s.recv() s.sendall()

e、传输完毕后,关闭套接字

#s.close()

客户端:

a、创建套接字,连接远端地址

#socket.socket(socket.AF_INET,socket.SOCK_STREAM,0)

#s.connect()

connect()方法:连接到address处的套接字。一般address的格式为元组(hostname,port),如果连接出错,

返回socket.error错误。

b、连接后发送数据和接收数据

#s.recv() s.sendall()

c、传输完毕后,关闭套接字

#s.close()

server.py:

import socket ip_port = ('127.0.0.1',9999) sk=socket.socket() sk.bind(ip_port) sk.listen(5) conn,address = sk.accept() conn.send('hello word ') conn.close() client.py:

import socket client = socket.socket() ip_port = ('127.0.0.1',9999) client.connect(ip_port) data = client.recv(1024) print data

企业建站2800元起,携手武汉肥猫科技,做一个有见地的颜值派!更多优惠请戳:武汉做网站 https://www.feimao666.com

上一篇:Python list(列表)实践 下一篇:最后一页