网络编程之TCP客户端程序开发

  • 1. 开发 TCP 客户端程序开发步骤
  • 2. socket 类的介绍
  • 3. TCP 客户端程序开发示例代码
  • 4. 小结

1. 开发 TCP 客户端程序开发步骤

  • 创建客户端套接字对象
  • 和服务端套接字建立连接
  • 发送数据
  • 接收数据
  • 关闭客户端套接字

2. socket 类的介绍

导入 socket 模块 import socket

创建客户端 socket 对象 socket.socket(AddressFamily, Type)

参数说明:

  • AddressFamily 表示IP地址类型, 分为TPv4和IPv6
  • Type 表示传输协议类型

方法说明:

  • connect((host, port)) 表示和服务端套接字建立连接, host是服务器ip地址,port是应用程序的端口号
  • send(data) 表示发送数据,data是二进制数据
  • recv(buffersize) 表示接收数据, buffersize是每次接收数据的长度

3. TCP 客户端程序开发示例代码

import socketif __name__ == '__main__':# 创建tcp客户端套接字# 1. AF_INET:表示ipv4# 2. SOCK_STREAM: tcp传输协议tcp_client_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)# 和服务端应用程序建立连接tcp_client_socket.connect(("192.168.131.62", 8080))# 代码执行到此,说明连接建立成功# 准备发送的数据send_data = "你好服务端,我是客户端小黑!".encode("gbk")# 发送数据tcp_client_socket.send(send_data)# 接收数据, 这次接收的数据最大字节数是1024recv_data = tcp_client_socket.recv(1024)# 返回的直接是服务端程序发送的二进制数据print(recv_data)# 对数据进行解码recv_content = recv_data.decode("gbk")print("接收服务端的数据为:", recv_content)# 关闭套接字tcp_client_socket.close()

执行结果:

b'hello'
接收服务端的数据为: hello

说明
str.encode(编码格式) 表示把字符串编码成为二进制
data.decode(编码格式) 表示把二进制解码成为字符串

网络调试助手充当服务端程序:

4. 小结

  • 导入socket模块
  • 创建TCP套接字‘socket’
    • 参数1: ‘AF_INET’, 表示IPv4地址类型
    • 参数2: ‘SOCK_STREAM’, 表示TCP传输协议类型
  • 发送数据‘send’
    • 参数1: 要发送的二进制数据, 注意: 字符串需要使用encode()方法进行编码
  • 接收数据‘recv’
    • 参数1: 表示每次接收数据的大小,单位是字节
  • 关闭套接字‘socket’表示通信完成

网络编程之TCP客户端程序开发相关推荐

  1. Centos网络编程之tcp十一种状态及问题处理办法

    尊重原创版权: https://www.noveljp.com/hot/43730.html 更多内容参考: https://www.noveljp.com/ Linux网络编程之tcp十一种状态及问 ...

  2. Java网络编程之TCP、UDP

    Java网络编程之TCP.UDP 2014-11-25 15:23 513人阅读 评论(0) 收藏 举报 分类: java基础及多线程(28) 版权声明:本文为博主原创文章,未经博主允许不得转载. J ...

  3. java网络编程之TCP通讯

    java中的网络编程之TCP协议的详细介绍,以及如何使用,同时我在下面举2例说明如何搭配IO流进行操作, 1 /* 2 *TCP 3 *建立连接,形成传输数据的通道: 4 *在连接中进行大数据量传输: ...

  4. Python中的网络编程之TCP

    Python中的网络编程之TCP 文章目录 Python中的网络编程之TCP 1.TCP介绍 2.TCP特点 3.TCP与UDP的不同点 4.tcp通信模型 5.tcp客户端 6.tcp服务器 7.T ...

  5. TCP 客户端程序开发

    TCP 客户端程序开发 1. 开发 TCP 客户端程序开发步骤回顾 创建客户端套接字对象 和服务端套接字建立连接 发送数据 接收数据 关闭客户端套接字 2. socket 类的介绍 导入 socket ...

  6. java 网络编程简单聊天_网络编程之 TCP 实现简单聊天

    网络编程之 TCP 实现简单聊天 客户端 1.连接服务器 Socket 2.发送消息 package lesson02;import java.io.IOException;import java.i ...

  7. 【网络编程】TCP 网络应用程序开发

    [网络编程]TCP 网络应用程序开发 TCP 网络应用程序开发流程 1. TCP 网络应用程序开发流程的介绍 2. TCP 客户端程序开发流程的介绍 3. TCP 服务端程序开发流程的介绍 4. 小结 ...

  8. TCP 客户端程序开发步骤

    TCP 客户端程序开发 1. 开发 TCP 客户端程序开发步骤回顾 创建客户端套接字对象 和服务端套接字建立连接 发送数据 接收数据 关闭客户端套接字 2. socket 类的介绍 导入 socket ...

  9. 网络编程之TCP协议与UDP对比

    网络编程之TCP协议与UDP对比 UDP协议: 1,面向无连接. 2,不可靠协议,容易丢包. 3,速度快. 4,包体积有限制,64k以内. 通常,聊天,在线视频,凌波. TCP协议: 1.面向连接. ...

最新文章

  1. mongodb关联查询 和spring data mongodb
  2. python逗号bug
  3. python中tolist_高效的张量操作 Pytorch中就占5种
  4. 在centos 6.3下安装php 5.3.3 xdebug的方法与步骤
  5. X-Frame-Options防止自己的网页放被在别人iframe中
  6. mybatis 之动态SQL
  7. 纯C++代码实现将像素矩阵保存为bmp图片
  8. POJ3617 Best Cow Line【水题】
  9. WebView的详细讲解
  10. pfSense book Html版下载!
  11. 计算机课题名称怎么取,课题名称:微型计算机操作入门
  12. SSD固态硬盘知识简介
  13. 史上最全的自动驾驶研究报告(上)
  14. Ettercap网络嗅探工具攻略
  15. 基于STM32F103C8T6的74HC595驱动8位数码管模块学习
  16. git切换远程分支为develop
  17. 【博客园-问题反馈】使用谷歌浏览器 百度图床图片无法显示
  18. com.zxy.android tiny,遇到一个 SIGABRT 这样的错误
  19. iOS ”打仙人掌“游戏一---游戏玩法实现
  20. statusBar控件

热门文章

  1. 如何对jmeter设置IP欺骗
  2. solodity实现erc721 宠物
  3. Binder对象死亡通知机制
  4. 雷电模拟器装Xposed
  5. JavaScript中正负零
  6. 关于微型计算机原理的文献,关于微型计算机原理论文范文资料 与微型计算机原理和接口技术实验教学体系改革有关论文参考文献...
  7. Android智能聊天机器人的实现
  8. ardl模型stata命令_18种Eviews方程参数估计方法汇总​
  9. 为什么有s[0]-‘0‘,是什么意思?
  10. 2014年国外公布的中国内地大学排名18强名单