From: Sven Hoexter Date: Thu, 31 Mar 2022 19:30:18 +0000 (+0200) Subject: Migrate envertech portalmonitor from optparse to argparse module. X-Git-Url: http://git.sven.stormbind.net/?p=sven%2Fscripts.git;a=commitdiff_plain;h=3a9925d20c42d5caca9ef636f6891c7632766162 Migrate envertech portalmonitor from optparse to argparse module. optparse is deprecated, argparse is the replacement --- diff --git a/home/portalmonitor.py b/home/portalmonitor.py index 3acd3f1..fdae4ba 100755 --- a/home/portalmonitor.py +++ b/home/portalmonitor.py @@ -1,26 +1,26 @@ #!/usr/bin/env python3 +import argparse import requests import time import sys import configparser from suntime import Sun -from optparse import OptionParser -parser = OptionParser(usage="usage: %prog [options]") -parser.add_option("-s", +parser = argparse.ArgumentParser() +parser.add_argument("-s", "--status", action="store_true", dest="printStatus", help="Print Status Information", default=False) -parser.add_option("-f", +parser.add_argument("-f", "--force", action="store_true", dest="force", help="Force retrieval of Power value", default=False) -(options, args) = parser.parse_args() +args = parser.parse_args() def isDaylight(lat, lon, toleranceSeconds): @@ -88,12 +88,12 @@ conf.read('portalmonitor.ini') # retrieve current power value as reported by envertecportal if isDaylight(conf['config'].getfloat('lat'), conf['config'].getfloat('lon'), - conf['config'].getint('toleranceSeconds')) or options.force: + conf['config'].getint('toleranceSeconds')) or args.force: currentPower = getCurrentPower(conf['config']['userName'], conf['config']['password'], conf['config']['stationId']) - if options.printStatus: + if args.printStatus: print(f"Current Power: {currentPower}") if currentPower == 0: