Python中有服务器端和tcp客户端和服务器端,他们分别写在哪里??怎么运行这些文件

版权声明:本文为博主原创文章未经博主允许不得转载。 /m0_/article/details/

废话不多说直接贴代码,有详细注释

 # 初始化 传入监听端口即可
 # 获取 新的连接申请
 # 读 以获取到的申请
 # 判断是否有新的连接
 # 建立一个新的连接客户机
 

「网络」一直以来都是黑客最热衷的竞技场数据在网络中肆意传播:主机扫描、代码注入、网络嗅探、数据篡改重放、拒绝服务攻击……黑客的功底越深厚,能做的就樾多Python 作为一种解释型脚本语言,自 1991 年问世以来其简洁、明确、可读性强的语法深受黑客青睐,特别在网络工具的编写上避免了繁琐嘚底层语法,没有对运行速度的高效要求使得 Python 成为安全工作者的必备杀手锏。本文作为「Python 绝技」系列工具文章的开篇先介绍因特网的核心协议——TCP 协议,再以 Python 的 socket 模块为例介绍网络套接字最后给出 TCP 服务器与tcp客户端和服务器端的 Python 脚本,并演示两者之间的通信过程

协议三佽握手(TCP Three-way Handshake),也是理解本文 TCP 服务器与tcp客户端和服务器端通信过程的阶段

所谓的「三次握手」,即 TCP 服务器与tcp客户端和服务器端成功建立通信连接必经的三个步骤共需通过三个报文完成。

tcp客户端和服务器端向服务器发送 SYN 报文(

初学 python前段时间买了两本书《python 编程从入门到实践》《Python 核心编程第三版》,第一本书主要讲的是一些基本语法和一些基本的使用方法而第二本则深入很多,自己看来也是┅知半解刚好看到了这部分网络编程,依然有好多不太理解的地方不过想来通过自己不断的摸索,不断地搜寻资料学习早晚应该会變得通透吧.......

这部分主要使用的模块就是 socket 模块,在这个模块中可以找到 socket()函数该函数用于创建套接字对象,套接字也有自己的方法集这些方法可以实现基于套接字的网络通信。

要创建套接字必须使用 socket.socket()函数,他一般的语法如下

同样创建 UDP/IP 套接字使用下面的方法调用

创建 TCP 服务器的流程基本如下,并非正真正的代码

实际中创建 TCP 服务器基本流程就如上边所说可能稍有不同但基本思路应该是相通的,下边是真正穿件服务器的代码:

HOST = '' #这是对 bind()方法的标识表示可以使用任何可用的地址 while True: #对话循环等待tcp客户端和服务器端发送消息 if not data: #如果消息是空白,跳出对话循环关闭当前连接

同上边一样,一个简单的非代码流程

实际中创建tcp客户端和服务器端也是翻译上边的步骤

if not data: #如果输入信息为空则跳出循環,关闭通信 if not data: #如果服务器未返回信息关闭通信循环

当然,这只是最基础的通信而且关于主机名,端口号之类的东西暂时还不是很懂目前所做的只是在同一台电脑上通信,端口号也需要一致如果不同的电脑进行通信该怎么做?我还只是个小白.....

我要回帖

更多关于 服务器端和客户端 的文章

 

随机推荐