目前就只能是同一设备不同程序间的TCP/IP通讯,已经知道服务器设备的ip但是呢客户端一直连接不上。
是在同一局域网吗?或者服务器是否是公网ip?如果两个都不是就不行
好问题!!抱歉我也不太懂,你问问chatGPT吧:https://new.quke123.com/
或者问下其他Python群友:https://app.yinxiang.com/fx/13ce6bbd-f36f-4e92-be53-92dd381ed729
可以使用socket模块,比如两台电脑连接在同一网络中,它们的IP地址分别是192.168.1.100和192.168.1.101。先在计算机A上,创建一个服务器程序,它将监听端口12345,并等待来自计算机B连接:
import socket
# 创建一个socket对象
server_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
# 绑定IP地址和端口号
server_socket.bind(('192.168.1.100', 12345))
# 开始监听端口
server_socket.listen(1)
# 等待客户端连接
print('等待客户端连接...')
client_socket, address = server_socket.accept()
print('客户端已连接,地址为:', address)
# 发送数据
client_socket.send(b'Hello, World!')
# 关闭socket连接
client_socket.close()
server_socket.close()
在计算机B上,创建一个客户端程序,它将连接到计算机A的IP地址和端口号,并接收来自计算机A的数据:
import socket
# 创建一个socket对象
client_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
# 连接服务器
client_socket.connect(('192.168.1.100', 12345))
# 接收数据
data = client_socket.recv(1024)
print('收到数据:', data.decode('utf-8'))
# 关闭socket连接
client_socket.close()
这样就使用了IPv4协议和TCP协议。要与不同类型的网络和设备通信,需要根据具体情况选择不同的协议和配置。在实际使用中,还需要考虑网络延迟、数据传输速率等因素,以确保通信的稳定和可靠。
不知道你这个问题是否已经解决, 如果还没有解决的话:IP_ADDR = '192.168.0.108'
PORT = 4008
#创建连接插口
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
#连接
s.connect((IP_ADDR, PORT))
通过socket函数建立插口函数,通过connect建立连接,其中IP和端口号在传感器配置阶段可以设置,也可以直接使用默认的IP。