我的目標是檢查GPSd是否在端口2947上運行,如果它在x秒內再次檢查。如果它未啓動GPSd,則在X秒後再次檢查。python:測試GPSd插座(2947)永遠不能連接第二次+時間
我的問題是它從來沒有通過/連接第二個++的時間。
我的代碼:
import socket
import os
import time
#Simply change the host and port values
host = 'localhost'
port = 2947
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
while 1:
try:
s.connect((host, port))
s.shutdown(2)
#s.close() DIDN'T WORK
print "Success connecting to "
print host + " on port: " + str(port)
time.sleep(20)
except:
print "Cannot connect to "
#os.system("sudo killall gpsd")
#os.system("sudo gpsd /dev/ttyAMA0 -n -F /var/run/gpsd.sock")
print host + " on port: " + str(port)
#os.system("sudo killall gpsd")
#os.system("sudo gpsd /dev/ttyAMA0 -F /var/run/gpsd.sock")
time.sleep(3)
我得到什麼:
成功連接到
本地主機端口:2947
無法連接到
本地主機端口:2947
無法連接到
本地網站已發佈:localhost代碼:2947
我已經嘗試過所有我能想到的,但因爲我不認爲我明白是什麼導致問題沒有太大的幫助。
我在's.shutdown(2)'後試過's.close()',但沒有奏效。 – JHub42