Led Ein/Aus mit timestamp auf google speadsheet

Python auf Einplatinencomputer wie Raspberry Pi, Banana Pi / Python für Micro-Controller
Antworten
janko84
User
Beiträge: 23
Registriert: Sonntag 17. September 2017, 16:52

Hallo Liebes Forum

Ich bin neu hier und kenne mich nicht so gut mit Python aus. In der Schule habe ich nun ein Projekt, bin auch fast fertig, aber es hackt an einer stelle.

Im folgenden code, schreibt python den wert als Text: "ZeitDatum" in eine Google Tabelle auf meinem Dirve.

Code: Alles auswählen

rangeName = 'Tabellenblatt1!A1'
    result = service.spreadsheets().values().get(
        spreadsheetId=spreadsheetId, range=rangeName).execute()
    values = result.get('values', [])

    if not values:
        print('')
    else:
        
        for row in values:
            # Print columns A and E, which correspond to indices 0 and 4.
            print('')

    values = [
    [
        "ZeitDatum","LED ON"
    ],
    # Additional rows ...
    ]
    body = {'values': values}
    result = service.spreadsheets().values().append(
        spreadsheetId=spreadsheetId, range="A1",
    valueInputOption="USER_ENTERED", body=body).execute()

if __name__ == '__main__':
   main()
Anstatt das es ZeitDatum reinschreibt, will ich das es dad Datum und die Zeit reinschreibt.

Kann mir da jemand helfen bitte.
__deets__
User
Beiträge: 14529
Registriert: Mittwoch 14. Oktober 2015, 14:29

Dazu gibt es das datetime Modul. Schau dir mal die Doku an, und dort vor allem die Methoden now() und strftime()
janko84
User
Beiträge: 23
Registriert: Sonntag 17. September 2017, 16:52

Hallo

Danke viel viel mals, das hat mir sehr geholfen und es funktioniert fast perfekt, habe jetzt nur ein kleines problem noch.

Es wird die Universal Time eingeschriben, nicht die Systemzeit, die Zeitzone Stimmt: Europa /Berlin .

Wie löse ich das?

Gruss
__deets__
User
Beiträge: 14529
Registriert: Mittwoch 14. Oktober 2015, 14:29

Das sollte so nicht sein. Zeig mal deinen Code.
janko84
User
Beiträge: 23
Registriert: Sonntag 17. September 2017, 16:52

Code: Alles auswählen

rangeName = 'Tabellenblatt1!A1'
    result = service.spreadsheets().values().get(
        spreadsheetId=spreadsheetId, range=rangeName).execute()
    values = result.get('values', [])

    if not values:
        print('')
    else:
        
        for row in values:
            # Print columns A and E, which correspond to indices 0 and 4.
            print('')

    values = [
    [
        strftime("%Y-%m-%d %H:%M:%S", gmtime()),"LED ON"
    ],
    # Additional rows ...
    ]
    body = {'values': values}
    result = service.spreadsheets().values().append(
        spreadsheetId=spreadsheetId, range="A1",
    valueInputOption="USER_ENTERED", body=body).execute()

if __name__ == '__main__':
   main()
__deets__
User
Beiträge: 14529
Registriert: Mittwoch 14. Oktober 2015, 14:29

Du benutzt nicht was ich angeraten habe, sondern das time Modul. Und da auch noch gmtime, welches für greeenwich mean time steht. Was erwartest du also :K
janko84
User
Beiträge: 23
Registriert: Sonntag 17. September 2017, 16:52

was für einen code muss ich den da reinbauen?
janko84
User
Beiträge: 23
Registriert: Sonntag 17. September 2017, 16:52

Habe es geschafft. Danke für die hilfe. super forum und absolut mega schnell.

danke danke danke

gruss
Antworten