cmd = 'ping google.com' import subprocess PIPE = subprocess.PIPE p = subprocess.Popen(cmd, shell=True, stdin=PIPE, stdout=PIPE, stderr=subprocess.STDOUT) while True: s = p.stdout.readline() if not s: break print s.decode('cp866'),
cmd = 'ping google.com' import subprocess PIPE = subprocess.PIPE p = subprocess.Popen(cmd, shell=True, stdin=PIPE, stdout=PIPE, stderr=subprocess.STDOUT) while True: s = p.stdout.readline() if not s: break print s.decode('cp866'),
missial
А вообще хочу написать утилиту, которая бы постоянно выводила средний пинг.Даже план есть небольшой:1. Отображать средний пинг .2. Научиться отображать всё это в GUI3. Сделать постоянyое отображение в трее windows
import sys, os from PyQt4 import QtCore from PyQt4.QtCore import SIGNAL from PyQt4.QtGui import QApplication from PyQt4.QtGui import QIcon from PyQt4.QtGui import QMenu from PyQt4.QtGui import QAction from PyQt4.QtGui import QSystemTrayIcon from PyQt4.QtCore import QString from PyQt4.QtCore import SLOT from PyQt4.QtCore import QTimer import subprocess if __name__ == "__main__": dummy_parent = QtCore.QObject() app = QApplication(sys.argv) plik = QString("/usr/share/icons/crystalsvg/16x16/apps/wine.png") menu = QMenu() quitAction = menu.addAction('Quit') sicon = QIcon(plik) tray = QSystemTrayIcon(sicon, parent=dummy_parent) tray.setContextMenu(menu) tray.show() quitAction.connect(quitAction, SIGNAL("triggered()"), app, SLOT("quit()")) tray.setToolTip("Ale czad!") def show_message(): cmd = 'ping google.com -n 1000' PIPE = subprocess.PIPE p = subprocess.Popen(cmd, shell=True, stdin=PIPE, stdout=PIPE, stderr=subprocess.STDOUT) while True: s = p.stdout.readline() if not s: break tray.showMessage("google.com", s.decode('cp866')) QTimer.singleShot(2000, show_message) sys.exit(app.exec_())
from PyQt4 import QtCore from PyQt4.QtCore import SIGNAL from PyQt4.QtGui import QApplication from PyQt4.QtGui import QIcon from PyQt4.QtGui import QMenu from PyQt4.QtGui import QAction from PyQt4.QtGui import QSystemTrayIcon from PyQt4.QtCore import QString from PyQt4.QtCore import SLOT from PyQt4.QtCore import QTimer
import sys, os from PyQt4 import QtCore from PyQt4.QtGui import QAction,QSystemTrayIcon,QMenu,QIcon,QApplication from PyQt4.QtCore import SLOT,QTimer,QString,SIGNAL import subprocess
sanodin
так ?
Imports should usually be on separate lines, e.g.: Yes: import os import sys No: import sys, os It's okay to say this though: from subprocess import Popen, PIPE
sanodinда, пропустил здесь, невнимательность граничащая с “побыстрей отделаться”
import sys, os
import subprocess address = 'ya.ru' while True: result=subprocess.Popen(["ping",'-n','1', str(address)],shell=True,stdout=subprocess.PIPE) ping = (result.stdout.read().decode('cp866')) m = ping.split() if len(m) != 48: print('0') else: print (m[46])
m[46]
from tkinter import * import subprocess root=Tk() variable=StringVar() def ping(): address = 'ya.ru' while True: result=subprocess.Popen(["ping",'-n','1', str(address)],shell=True,stdout=subprocess.PIPE) ping = (result.stdout.read().decode('cp866')) m = ping.split() if len(m) != 48: b = '0' else: b = m[46] variable.set(str(b)) root.update() your_label=Label(root,textvariable=variable) your_label.pack() start_button=Button(root,text="start",command=ping) start_button.pack() root.mainloop()