Используя netcat для мониторинга определенного порта на моем устройстве, я могу проверить полученные данные, а также отправить данные обратно на подключенное к нему устройство. Использование командного терминала оболочки.
У меня вопрос, как сделать то же самое в Python?
Я попробовал что-то подобное, а пока:
Я могу получить данные и проверить их, но они не отвечают (используя стандартный ввод)
import os
import time
import subprocess
cmd = ['sudo nc -l -p 12']
while True:
proc = subprocess.Popen(cmd, shell = True,
stdout = subprocess.PIPE,
stderr = subprocess.PIPE,
stdin = subprocess.PIPE, close_fds=True)
_output = proc.stdout.read().decode('utf-8')
_error = proc.stderr.read().decode('utf-8')
print("\nout: " + _output)
print("err: " + _error )
print (proc.communicate()[0])
if _output == 'pOnti Serial-Ethernet':
time.sleep(1)
try:
_input = proc.stdin.write((bytes('ok', 'utf-8')))
print("in : " + str(_input))
proc.stdin.close()
proc.wait()
except: pass
Извините за плохое владение языком, я бразилец.