Python物联网开发-Python_Socket通信开发-Python与Tcp协议物联网设备通信-Socket客户端

一、前言

Python在物联网开发中的重要愈来愈重,因此,掌握Python语言与物联网设备之间的通信就显得尤为重要,可以通过编写Python程序实现获取物联网设备的传感器数值并可以更改物联网设备上的执行器状态。

二、程序实现

首先,当使用Python进行Socket通信时,需要导入Python的socket库。

python 复制代码
import socket

创建一个socket对象,此处,我们使用TCP协议创建了一个客户端的socket对象。

python 复制代码
my_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)

随后,规定要连接的设备(或Tcp服务器)的IP地址和端口。本代码将连接本机自身的Tcp服务器,以便于查看效果。

python 复制代码
server_ip_port = ('127.0.0.1', 8080)

根据上述信息,向服务器端发起连接请求。

python 复制代码
my_socket.connect(server_ip_port)

向服务器端发送消息或特定协议指令。

python 复制代码
message = 'This is Xixi_CaiNiao!'
my_socket.send(message.encode())

等待服务器端响应,接收来自服务器端的信息。(此处程序处于阻塞状态)

python 复制代码
response = my_socket.recv(1024)

将接收到的信息打印出来。

python 复制代码
print(response.decode())

程序结束,释放socket对象。

python 复制代码
my_socket.close()

三、程序完整代码

python 复制代码
# 西西菜鸟 2023-7-13
import socket

my_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
server_ip_port = ('127.0.0.1', 8080)
my_socket.connect(server_ip_port)
message = 'This is Xixi_CaiNiao!'
my_socket.send(message.encode())
response = my_socket.recv(1024)
print(response.decode())
my_socket.close()

四、效果演示

打开网络调试助手,创建本地Tcp服务器。协议类型选择:TCP Server,IP与端口与源代码一致,'127.0.0.1'代表本地地址。

运行程序,可以看到我们已经收到来自程序发送的字符串("This is Xixi_CaiNiao!")。

此时,程序处于阻塞状态,等待服务端响应。此时,我们想客户端发送"OK"。

此时,程序已经全部执行完成。

相关推荐
漫途科技9 小时前
智慧水务、智慧工厂场景加速落地 物联网终端成数字化转型核心支撑
物联网
姚不倒9 小时前
F5 SSL Profile 证书卸载深入篇
运维·网络协议·负载均衡·ssl·f5
csg110710 小时前
PIC单片机防破解:从硬件到软件的全面防护
单片机·嵌入式硬件·物联网·自动化
华普微HOPERF11 小时前
容耦数字隔离器,如何调节OOK调制所产生的谐波分量?
物联网·数字隔离器
小小的代码里面挖呀挖呀挖11 小时前
杰理蓝牙耳机开发--LE Audio与游戏耳机应用
笔记·单片机·物联网·学习
搞物联网的木子11 小时前
工厂车间设备远程监控详细方案(LoRa无线改造)
物联网·信息与通信·射频工程
会周易的程序员13 小时前
使用 LuaBridge 封装 C++ 日志库 microLog 为 Lua 模块
c++·物联网·junit·lua·日志·iot·aiot
念何架构之路13 小时前
moby-http-api-server
网络·网络协议·http
KaMeidebaby13 小时前
卡梅德生物技术快报|纳米抗体技术全套实操流程:AFB1 全合成文库淘选 + 分子对接定点突变参数手册
人工智能·python·tcp/ip·算法·机器学习
新e选店长14 小时前
新e选烤火罩使用相关问题、购买相关问题、售后相关问题。
大数据·科技·物联网·材质·烤火罩