Как перехватывать информацию из консоли?
from subprocess import Popen, PIPE


def get_ping():
    args = ["ping", "-n", "4", "www.ya.ru"] # -n требуются права Администратора
    process = Popen(args, stdout=PIPE)
    """
    # Построчное чтение данных
    for line in process.stdout:
  	    print("stdout:", line.decode('cp866'))
    """
    data, error = process.communicate()  # Распаковка кортежа
    print(error)
    return data.decode(encoding='cp866') # cp866 для Windows

def main():
    print(get_ping())
    input()

if __name__ == '__main__':
    main()
from subprocess import Popen, PIPE

 # запускаем команду, вывод перенаправляем в PIPE
proc = Popen('cmd /c ping 8.8.8.8', stdout=PIPE)

#  по завершении работы proc, прочитать данные из
# stdout (и отправить ввод, если надо), результат не декодирован (bytes)
res = proc.communicate()[0]  # <- communicate возвращает кортеж (stdout_data, stderr_data)

print(res.decode('cp866')) # выводим на печать декодированные данные