diff --git a/send_wtis.py b/send_wtis.py new file mode 100644 index 0000000..1cbda50 --- /dev/null +++ b/send_wtis.py @@ -0,0 +1,61 @@ +import socket +import random +import time + +HOST = "192.168.1.5" # 目标地址 +PORT = 9929 # 目标端口 + +# 你给的示例里出现的所有前四位字段 +WITS_CODES = [ + "0105", + "0106", + "0108", + "0112", + "0114", + "0116", + "0118", + "0120", + "0121", + "0122" +] + +def random_value(prefix): + """ + 生成类似你收到的数据: + - 有些是整数:例如 0105 251114 + - 有些是浮点:例如 0108 37.26745 + """ + # 随机决定生成整数 or 小数 + if random.random() < 0.3: + # 生成整数(6位左右) + value = str(random.randint(100000, 999999)) + else: + # 生成浮点(保留4~5位小数) + value = f"{random.uniform(0, 500):.5f}" + + return prefix + value + + +def send_wits_data(): + sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) + sock.connect((HOST, PORT)) + print("Connected to target. Sending WITS data...") + + try: + while True: + for code in WITS_CODES: + msg = random_value(code) + + sock.sendall((msg + "\r\n").encode()) + print("Sent:", msg) + + time.sleep(0.2) # 每条间隔 200ms,可根据需要调整 + + except Exception as e: + print("Error:", e) + finally: + sock.close() + + +if __name__ == "__main__": + send_wits_data()