千家信息网

Python中怎么实现服务端与客户端连接

发表于:2024-11-18 作者:千家信息网编辑
千家信息网最后更新 2024年11月18日,本篇内容主要讲解"Python中怎么实现服务端与客户端连接",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"Python中怎么实现服务端与客户端连接"吧!服务
千家信息网最后更新 2024年11月18日Python中怎么实现服务端与客户端连接

本篇内容主要讲解"Python中怎么实现服务端与客户端连接",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"Python中怎么实现服务端与客户端连接"吧!

服务端

我们使用 socket 模块的 socket 函数来创建一个 socket 对象。socket 对象可以通过调用其他函数来设置一个 socket 服务。

现在我们可以通过调用 bind(hostname, port) 函数来指定服务的 port(端口)

接着,我们调用 socket 对象的 accept 方法。该方法等待客户端的连接,并返回 connection 对象,表示已连接到客户端。

完整代码如下:

实例

#!/usr/bin/python3
# 文件名:server.py

# 导入 socket、sys 模块
import socket
import sys

# 创建 socket 对象
serversocket = socket.socket(
socket.AF_INET, socket.SOCK_STREAM)

# 获取本地主机名
host = socket.gethostname()

port = 9999

# 绑定端口号
serversocket.bind((host, port))

# 设置最大连接数,超过后排队
serversocket.listen(5)

while True:
# 建立客户端连接
clientsocket,addr = serversocket.accept()

print("连接地址: %s" % str(addr))

msg='欢迎访问菜鸟教程!'+ "\r\n"
clientsocket.send(msg.encode('utf-8'))
clientsocket.close()

客户端

接下来我们写一个简单的客户端实例连接到以上创建的服务。端口号为 9999。

socket.connect(hostname, port ) 方法打开一个 TCP 连接到主机为 hostname 端口为 port 的服务商。连接后我们就可以从服务端获取数据,记住,操作完成后需要关闭连接。

完整代码如下:

实例

#!/usr/bin/python3
# 文件名:client.py

# 导入 socket、sys 模块
import socket
import sys

# 创建 socket 对象
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)

# 获取本地主机名
host = socket.gethostname()

# 设置端口号
port = 9999

# 连接服务,指定主机和端口
s.connect((host, port))

# 接收小于 1024 字节的数据
msg = s.recv(1024)

s.close()

print (msg.decode('utf-8'))

现在我们打开两个终端,第一个终端执行 server.py 文件:

$ python3 server.py

第二个终端执行 client.py 文件:

$ python3 client.py 欢迎访问菜鸟教程!

这时我们再打开第一个终端,就会看到有以下信息输出:

连接地址: ('192.168.0.118', 33397)

到此,相信大家对"Python中怎么实现服务端与客户端连接"有了更深的了解,不妨来实际操作一番吧!这里是网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

服务 客户 客户端 对象 主机 文件 方法 终端 函数 口号 实例 模块 端口 代码 内容 可以通过 地址 教程 数据 文件名 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 蜂狂购软件开发怎么样 谷粒商城买服务器 软件开发企业的购销合同印花税 ifix存储数据到数据库 数据库恢复中心 想自学数学有什么软件开发 美团外卖服务器怎么加入 常态化分析研判网络安全形势 网络技术学院毕业证书 东西湖区国际网络安全维护介绍 兴化个性化网络技术诚信合作 广东机架式服务器价格 2021年国家网络安全表彰 游戏服务器架构设计 科技感互联网主题手抄报 哈利波特室友不同服务器 数据库数值怎么加1 金山区数据库安防系统销售方法 商场数据库设计心得体会 网络安全服务招标规定 北京银行网络安全周 北京通讯软件开发服务五星服务 网络安全信息化领导讲话 持续集成服务器 网络安全技术应用在哪些 国家网络安全三级认证 网络安全是国际安全 软件开发人员目前的需求 网络规划中网络安全性测试 希望之村服务器不见了怎么办
0