话不多说,直接进入正题

一:客户端一共分为5大块:

1.创建客户端套接字

2.和服务端套接字建立连接

3.发送数据

4.接收发送

5.关闭客户端套接字

二:socket类的介绍

导入 socket 模块
import socket

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

send(data) 表示发送数据,data是二进制数据

recv(buffersize) 表示接收数据, buffersize是每次接收数据的长度

三:程序开发

import socket

def main():
# 创建tcp客户端套接字
tcp_client_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
# 和服务端应用程序建立连接
tcp_client_socket.connect(("192.168.28.1", 6666))
# 准备发送的数据
send_data = "你好,请问是服务器吗!".encode("gbk")
# 发送数据
tcp_client_socket.send(send_data)
# 接收数据, 接收的数据最大字节数是1024
recv_data = tcp_client_socket.recv(1024)
# 返回的直接是服务端程序发送的二进制数据
print(recv_data)
# 对数据进行解码
recv_content = recv_data.decode("gbk")
print("接收服务端的数据为:", recv_content)
# 关闭套接字
tcp_client_socket.close()
if __name__ == '__main__':
main()

*****************************************

如果看客们不太理解的话,我给大家举个例子:

创建套接字  相当于买手机

和服务端建立连接 相当于你把电话打给谁

发送数据 相当于你打通电话想跟对方说的话

接收数据 相当于你收到了对方说的话

关闭客户端 相当于电话打完了,挂断电话

说到这是不是好理解些呢?

*****注意点*****
windows的编码格式是gbk
mac os的编码格式是utf-8

参数1: ‘AF_INET’, 表示IPv4地址类型

参数2: ‘SOCK_STREAM’, 表示TCP传输协议类型

********************************************************************

第一次发博客,博客园还不太会用,如果大家喜欢的话,以后会不定时更新博客,

希望大佬们嘴下留情,小弟就是一小白,有什么改进的请留言;

         谢谢了!


 

tcp客户端程序开发的更多相关文章

  1. python网络编程--TCP客户端的开发

    #导入socket模块 2 import socket 3 #参数说明 4 """ 5 socket类的介绍 6 创建客户端socket对象 7 socket.socke ...

  2. Linux网络编程:基于TCP的程序开发回顾篇《转》

    面向连接的TCP程序设计 基于TCP的程序开发分为服务器端和客户端两部分,常见的核心步骤和流程: 其实按照上面这个流程调用系统API确实可以完全实现应用层程序的开发,一点问题没有.可随着时间的推移,你 ...

  3. 初识Modbus TCP/IP-------------C#编写Modbus TCP客户端程序(一)

    转自:http://blog.csdn.net/thebestleo/article/details/52269999 首先我要说明一下,本人新手一枚,本文仅为同样热爱学习的同学提供参考,有不 对的地 ...

  4. Dynamics CRM 客户端程序开发:在实体的列表界面添加按钮

    关注本人微信和易信公众号: 微软动态CRM专家罗勇 ,回复114或者20140312可方便获取本文,同时可以在第一时间得到我发布的最新的博文信息,follow me! 如果没有安装Ribbon Wor ...

  5. TCP客户端程序

    TCP客户端程序的函数调用顺序为:socket -> connect -> send/recv socket.send和recv函数在TCP服务器程序中已经说过了,这里就不赘述了. con ...

  6. 29-ESP8266 SDK开发基础入门篇--编写TCP 客户端程序(Lwip RAW模式,非RTOS版,精简入门)

    https://www.cnblogs.com/yangfengwu/p/11456667.html 由于上一节的源码长时间以后会自动断开,所以再做这一版非RTOS版的,咱直接用lua源码里面别人写的 ...

  7. 28-ESP8266 SDK开发基础入门篇--编写wifi模块TCP 客户端程序(官方API版,非RTOS版)

    https://www.cnblogs.com/yangfengwu/p/11432795.html 注:这节实现的功能是WIFI模块作为TCP 客户端,连接咱的TCP服务器,然后实现透传 本来想着做 ...

  8. 【实验 1-1】编写一个简单的 TCP 服务器和 TCP 客户端程序。程序均为控制台程序窗口。

    在新建的 C++源文件中编写如下代码. 1.TCP 服务器端#include<winsock2.h> //包含头文件#include<stdio.h>#include<w ...

  9. 初识Modbus TCP/IP-------------C#编写Modbus TCP客户端程序(二)

    由于感觉上一次写的篇幅过长,所以新开一贴,继续介绍Modbus TCP/IP的初步认识, 书接上回 3).03(0x03)功能码--------读保持寄存器 请求与响应格式 这是一个请求读寄存器108 ...

随机推荐

  1. 牛客练习赛32 B题 Xor Path

    链接:https://ac.nowcoder.com/acm/contest/272/B来源:牛客网 题目描述 给定一棵n个点的树,每个点有权值.定义表示  到  的最短路径上,所有点的点权异或和. ...

  2. django学习01-建project和app

    按装完成后,执行命令 django-admin startproject mysite 建一个名字为mysite的工程.运行 python manage.py runserver 启动网络服务器,然后 ...

  3. 合成语音 TTS

    弄了一天的合成语音 感觉好难受,明明这么简单的事情非弄得要这么复杂.... 引入命名空间 或者 导入命名空间 代码: using System; using System.Collections.Ge ...

  4. WebSocket重连实现

    方式一.使用第三方库实现 比如:reconnecting-websocket.jsReconnectingWebSocket,代码:https://github.com/joewalnes/recon ...

  5. Java环境变量配置超详细教程

    https://blog.csdn.net/Mxdon_on/article/details/89461365 概述 Java的环境配置并不是特别难,但是对刚上手的新手来说确实是一个大问题 首先下载j ...

  6. python并发之多进程

    #mutiprocessing模块 python中的多线程无法利用多核优势,如果想要充分地使用多核CPU的资源(os.cpu_count()查看),在python中大部分情况需要使用多进程.Pytho ...

  7. 《Android项目实战--手机安全卫士》读后感

    上学期在学校图书馆看到此书,觉得比较贴近实践,于是寒假研究了一番,也算是体会了一把社会培训机构的模式. 由于时间关系,最后两章还没弄完,但感觉每章节的流程相似,加之马上要回学校了,所以打算在家的最后一 ...

  8. 中国剩余定理(CRT)及其拓展(ExCRT)

    中国剩余定理 CRT 推导 给定\(n\)个同余方程 \[ \left\{ \begin{aligned} x &\equiv a_1 \pmod{m_1} \\ x &\equiv ...

  9. Java String 如何加双引号

    public class Test{ public static void main(String[] args){ String str1 = "\"name\"&qu ...

  10. JUC-7-lock接口

    解决多线程安全的方式   synchronized     隐式锁    1.同步代码块  2.同步方法   3.lock  同步锁    显式锁         lock()方法上锁    unlo ...