我正试图找出如何过滤从一个端口转发到另一个端口的数据。在
我所做的是从室内定位系统中获取数据并将其导入到我的Oracle数据库中。这是我用来转发数据的脚本,它非常好用。在
基本上,我的室内定位系统只能连接到8787端口,我的数据库从8081端口接收数据。在
import socket
port = 8787
s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
s.bind(("", port))
print ("waiting on port:", port)
while 1:
data, addr = s.recvfrom(1024)
s.sendto(data, ('192.1.1.1',8788))
下面是它的数据流:
{"id":"0xDECA34303170235F","timestamp":946684889.332,"msgid":78,"coordinates":{"x":0.392,"y":0.616,"z":1.228,"heading":0.000,"pqf":100},"meas":[{"anchor":"0xDECA353034301E99","dist":1.433,"dqf":100},{"anchor":"0xDECA323030901DE2","dist":8.307,"dqf":100},{"anchor":"0xDECA323031300FBF","dist":6.288,"dqf":89},{"anchor":"0xDECA333035101DAA","dist":10.308,"dqf":87}]}
我需要的是:
[ "0xDECA34303170235F", 946684889.332, 78, 0.392, 0.616, 1.228, 0 ]
我是通过设置一个过滤器并通过jqplay运行示例数据得到的。这是我用过的过滤器
^{pr2}$我想弄清楚的是把这些过滤器放到转发脚本的什么地方,这样数据在转发之前就可以被过滤掉了。对于数据库,任何丢失的数据都必须为null。在
我在Windows8上使用Python2.7,通过choco下载并安装了jq。在
目前没有回答
相关问题 更多 >
编程相关推荐