diff --git a/sndid.py b/sndid.py index 358411b..4c9b088 100644 --- a/sndid.py +++ b/sndid.py @@ -92,6 +92,16 @@ parser.add_argument( default="0.50", ) +parser.add_argument( + "-l", + "--list", + help="Output as human readable list not terse (default True)", + action=argparse.BooleanOptionalAction, + type=bool, + required=False, + default=True, +) + args = parser.parse_args() INFILE = args.input LAT = args.latitude @@ -100,6 +110,7 @@ YEAR = args.year MONTH = args.month DAY = args.day CONFIDENCE = args.confidence +LIST = args.list f = io.StringIO() with redirect_stdout(f), redirect_stderr(f): @@ -118,4 +129,28 @@ f = io.StringIO() with redirect_stdout(f), redirect_stderr(f): recording.analyze() -print(recording.detections) +if LIST: + i = 0 + species_sort = "" + for i in range(0, len(recording.detections)): + species_sort = species_sort + ( + recording.detections[i]["common_name"] + + ", " + + recording.detections[i]["scientific_name"] + + ", " + + str(recording.detections[i]["start_time"]) + + ", " + + str(recording.detections[i]["end_time"]) + + ", " + + str(recording.detections[i]["confidence"]) + + "\n" + ) + species_out = sorted(species_sort.split("\n")) + + i = 0 + for i in range(1, len(species_out)): + print(species_out[i]) + + +else: + print(recording.detections)