python网络设计模块

Posted 点滴听滴答

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python网络设计模块相关的知识,希望对你有一定的参考价值。

1.Socket模块

Socket模块中的socket()方法用于创建套接字,套接字主要是两个程序之间的信息通道,程序可能分布在不同的计算机上,通过套接字相互发送信息

语法格式:socket(socket_family,socket_type,protocol = 0)

socket_family    该参数的值可以为AF_UNIX或AF_INET

socket_type   该参数的值可以为SOCK_STREAM或SOCK_DGRAM

protocol   该参数一般不赋值,默认值为0

2)socket的工作方式

套接字包括两个:服务器套接字和客户机套接字。套接字在工作的时候,将连接对端分为服务器端和客户端,这也是C/S(Client/Server,客户端/服务器端)模式的由来

服务器端套接字必须准备随时处理客户端的连接,同时还要处理多个连接,而客户机只是简单地连接,完成事务、断开连接。

Socket类的实例化需要3个参数:
·第一个参数是地址簇(默认是socket.AF_INET)

·第二个参数是流(默认值为socket.SOCK_STREAM)或数据报(默认值为socket.SOCK_DGRAM)套接字

·第三个参数是使用的协议(默认为0,使用默认值即可)

不同的套接字类型有着不同的套接字地址。在AF_UNIX地址簇中使用一个简单的字符串;在AF_INET地址簇中使用的是host和port地址对,其中host为主机地址名、IP地址或者Internet上的URL,而port则是一个整数;在AF_INET6地址簇中用(host,port,flowinfo,scopeid)元组来表示,其中的host和port与AF_INET中相同。

客户端应用程序在生成套接字对象后,可以调用bind()方法来绑定自己的请求套接字接口地址,然后调用connect()方法来连接服务器端进程。当连接建立后,可以使用send()和recv()方法来传输数据。最后需要使用close()方法将端口关闭。

服务器端套接字使用bind()方法绑定一个套接字接口地址,接着使用listen()方法监听客户端请求。当有客户端请求时,将通过accept()方法来生成一个连接对象,然后通过此连接对象发送和接收数据。数据传输完毕,可以调用close()方法将生成的连接关闭。

 

以上是关于python网络设计模块的主要内容,如果未能解决你的问题,请参考以下文章

网易考拉Android客户端网络模块设计

毕业设计深度学习垃圾分类系统 - python 卷积神经网络

C++/Qt网络通讯模块设计与实现

Python 的网络传输文件功能的设计与实现

基于Python网络爬虫的设计与实现毕业设计

铁乐学Python_Day33_网络编程Socket模块1