Ger*_*Ger 8 python cgi serial-port
我有一种情况,我需要一个python脚本在连续循环中运行,我需要从另一个脚本传递参数,该脚本将在动作发生时运行.
第二个脚本将由一个使用cgi的网站触发,我的工作正常.连续循环应该接受cgi脚本读出的参数(然后通过串口发送信息).
对于特定问题,我不能让cgi脚本直接通过串口发送数据,因为每次运行时都会重置串口.
我似乎无法找到有关此类设置的任何信息.是否有任何方法或库可供我们研究这种或更好的方法来接近它?
ayc*_*dee 10
我会使用套接字连接.基本上,您正在编写一个非常简单的服务器,一次只能连接一个
import socket
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.bind(("localhost", 9988))
s.listen(1)
while True:
conn, addr = s.accept()
data = conn.recv(1024)
conn.close()
my_function_that_handles_data(data)
Run Code Online (Sandbox Code Playgroud)
s.accept()是一个阻止电话.它等待连接.然后你读一下连接.在这种情况下,我们假设参数的长度仅为1024字节.然后我们对从套接字收到的数据做一些事情并等待另一个连接.
客户端看起来像这样:
import socket
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.connect(("localhost", 9988))
s.sendall('My parameters that I want to share with the server')
s.close()
Run Code Online (Sandbox Code Playgroud)
关于这一点的好处是,将来如果客户端和服务器不再在同一台机器上运行,那么只需更改"localhost"为您要访问的实际IP地址或域名即可.