Flask mit python-crontab

Django, Flask, Bottle, WSGI, CGI…
Antworten
Tschili
User
Beiträge: 2
Registriert: Sonntag 28. Oktober 2018, 11:46

Freitag 29. November 2019, 22:04

Hallo,

ich möchte aus Flask heraus Scripte mit python-CronTab starten und oder beenden. Jedoch bekomme ich immer eine Fehlermeldung. Hat es schon mal jemand benutzt oder kann mir helfen?
Der Fehler lautet: cron = CronTab(user='root') TypeError: __init__() got an unexpected keyword argument 'user'


Hier die Syntax:

Code: Alles auswählen

# CronTabs anlegen
#https://stackabuse.com/scheduling-jobs-with-python-crontab/ - Beispiel
cron = CronTab(user='root')
job = cron.new(command='python crontest.py')
job.minute.every(1)

cron.write()
print("Job createt")

for job in cron:
    print(job)

def create_app(configfile='wasser-schalten.cfg'):
    app = Flask(__name__)
    AppConfig(app, configfile)
    app.debug = app.config['DEBUG']
    Bootstrap(app)
    GPIO.setmode(GPIO.BCM)
    GPIO.setwarnings(False)
    
    usw. ...
    
Benutzeravatar
__blackjack__
User
Beiträge: 4681
Registriert: Samstag 2. Juni 2018, 10:21
Wohnort: 127.0.0.1
Kontaktdaten:

Freitag 29. November 2019, 22:58

@Tschili: Das falsche `crontab`-Modul installiert‽

Sofern das nicht in einem virtualenv läuft ist ``python`` = Python 2. Damit sollte man mindestens mal keine neuen Projekte mehr anfangen.

Warnungen sind nicht zum unterdrücken/ignorieren da, sondern dazu das man die Ursachen behebt. In der Regel reicht es einfach dafür zu sorgen das die `GPIO.cleanup()`-Funktion auf jeden Fall aufgerufen wird.
“Give a man a fire and he's warm for a day, but set fire to him and he's warm for the rest of his life.”
— Terry Pratchett, Jingo
rogerb
User
Beiträge: 17
Registriert: Dienstag 26. November 2019, 23:24

Samstag 30. November 2019, 06:54

Es gibt unterschiedliche CronTab packages für Python.
Bist du sicher, du hast die richtige?

In deinem Fall wäre es:
pip install python-crontab

und nicht:
pip install crontab

Beide packages sind ähnlich, haben aber etwas unterschiedliche Syntax
Antworten