# This may take a bit... import os import urllib2 if not os.path.exists('LK003_0113.tgz'): fh1 = urllib2.urlopen('http://lda10g.alliance.unm.edu/metadata/observation/130921_done/LK003_0113.tgz') fh2 = open('LK003_0113.tgz', 'wb') fh2.write(fh1.read()) fh1.close() fh2.close() print "Metadata Size: %.1f kB" % (os.path.getsize('LK003_0113.tgz')/1024.) from lsl.common import metabundle project = metabundle.getSessionDefinition('LK003_0113.tgz') print "Project ID: %s" % project.id print "Session ID: %i" % project.sessions[0].id from datetime import datetime, timedelta nObs = len(project.sessions[0].observations) for i in xrange(nObs): currDur = project.sessions[0].observations[i].dur currDur = timedelta(seconds=int(currDur/1000), microseconds=(currDur*1000) % 1000000) print " Observation #%i" % (i+1,) print " Target: %s" % project.sessions[0].observations[i].target print " Mode: %s" % project.sessions[0].observations[i].mode print " Start:" print " MJD: %i" % project.sessions[0].observations[i].mjd print " MPM: %i" % project.sessions[0].observations[i].mpm print " Duration: %s" % currDur from lsl.astro import utcjd_to_unix, MJD_OFFSET mjd = project.sessions[0].observations[0].mjd mpm = project.sessions[0].observations[0].mpm tStart = utcjd_to_unix(mjd + MJD_OFFSET) tStart += mpm / 1000.0 print "MJD: %i" % mjd print "MPM: %i" % mpm print "-> %s" % datetime.utcfromtimestamp(tStart) fileInfo = metabundle.getSessionMetaData('LK003_0113.tgz') for obsID in fileInfo.keys(): print " Obs. #%i: %s on %s" % (obsID, fileInfo[obsID]['tag'], fileInfo[obsID]['barcode']) for which in ('Beginning', 'End'): aspConfig = metabundle.getASPConfigurationSummary('LK003_0113.tgz', which=which) print ' %s' % which for k in aspConfig.keys(): print ' %s: %i' % (k, aspConfig[k])