subprocess.check_output() не обеспечивает полный вывод iwconfig
Я пытаюсь сделать программу Python для отображения информации о подключении WiFi, но я попал в ловушку. subprocess.check_output() не работает так, как мне нужно.
>>>import subprocess
>>>test = subprocess.check_output("iwconfig")
Предоставляет мне следующее: enp9s0 нет беспроводных расширений.
virbr0-nic no wireless extensions.
virbr0 no wireless extensions.
lo no wireless extensions.
Но когда я захожу в терминал и выполняю ту же команду, он дает мне следующее:
wlp4s0 IEEE 802.11abgn ESSID:[Network Name]
Mode:Managed Frequency:5.2 GHz Access Point: [access point]
Bit Rate=81 Mb/s Tx-Power=14 dBm
Retry short limit:7 RTS thr:off Fragment thr:off
Power Management:off
Link Quality=36/70 Signal level=-74 dBm
Rx invalid nwid:0 Rx invalid crypt:0 Rx invalid frag:0
Tx excessive retries:0 Invalid misc:26 Missed beacon:0
enp9s0 no wireless extensions.
virbr0-nic no wireless extensions.
virbr0 no wireless extensions.
lo no wireless extensions.
Может кто-нибудь сказать мне, как это исправить (моя цель - получить всю информацию, которую я получаю, когда запускаю ее в терминале, когда использую python для ее запуска). Я пытался смотреть на документы, но я не понимаю все, что там сказано. Заранее спасибо.
1 ответ
Решение
Часть вывода может идти в stderr.
test = subprocess.check_output("iwconfig", stderr=subprocess.STDOUT)