Ещё больше ненужных наворотов в виде PS, прекрасно. Не, я ничего против не имею, нравится - используй так. Но проще ж через os.execute('ping 8.8.8.8>nul') == 0
. Если есть интернет, вернёт true, нету - false.
Просто если через popen то можно ответ прочитать проанализировать в скрипте что почему, каков пинг если инет есть, а не только тру или фальс, и это не только пинга касается а вообще результатов выполнения любой команды