あなたに合ったPython 2.7-3.5 gpsdクライアントがあります。必要な方法とタイミングでデータを取得するために使用するスレッド アダプターがあります。4行で:
from agps3threaded import AGPS3mechanism
次に、糸の三頭政治に従事し、
agps_thread = AGPS3mechanism() # This instantiate the mechanism, as I believe it's called.
agps_thread.stream_data() # Stream the data from host, port, devicepath.
agps_thread.run_thread() # Iterate stream as a thread with throttle control for empty look ups.
gpsd に期待されるほとんどの接続、通信、および制御を可能にする 4 行のコード。
while True: # All data is available via instantiated thread data_stream attributes. Confur
# lines #140-ff of the client /usr/local/lib/python3.5/dist-packages/gps3/agps.py
print('----------------')
print( agps_thread.data_stream.time)
print('Lat:{} '.format(agps_thread.data_stream.lat))
print('Lon:{} '.format(agps_thread.data_stream.lon))
print('Speed:{} '.format(agps_thread.data_stream.speed))
print('Course:{}'.format(agps_thread.data_stream.track))
print('----------------')
sleep(60) # Sleep, or do other things for as long as you like.
括弧内に引数がない場合、スレッド化されたクライアントはデフォルトでhost='127.0.01'
、port=2947
、gpsd_protocol='json'
、およびusnap=0.2
に設定され、それぞれの空のソケット ルックアップ後に 10 分の 2 秒のマイクロ ナップという適切なデフォルトが設定されます。プロジェクトの残りの部分はDESCRIPTION.rstにあるか、ファイル自体に文書化されています。
gpsd の共有メモリ セグメントへの Python インターフェイスを探している場合は、それも利用できます。