Ich habe einen Code, den ich in Einzelschritten in Jupyter getestet habe und der klappt.
Nun möchte ich das Ganze zu einer Funktion zusammenfassen und mit xlwings dann in Excel laufen lassen.
Jedoch erhalte ich hier nun einen SyntaxError Fehler in Zeile 12 "invalid syntax" (bei "zählerstand.drop...)
Wenn ich zB diesen Schritt mit #glatt stelle, dann kommt der gleiche Fehler in Zeile 13, dann in 14 etc.
Habe das Gefühl, als ob der Code hier in der Funktion zusammengefasst die Einzelschritte nicht ausgibt.
Oder an was könnte es sonst liegen? Hätte evtl. jemand eine Idee?
Code: Alles auswählen
import requests
import pandas as pd
import xlwings as xw
def values_in_past_multiple(deviceId, startdate, enddate):
interval = int(1000)
base_url = 'https://smart-me.com:443/api/ValuesinPastMultiple'
auth_data = ('xx', 'xx')
response = requests.get(f'{base_url}/{deviceId}?startDate={startdate}, &endDate={enddate}&interval={interval}', auth=auth_data)
response.raise_for_status()
zählerstand = response.json()
zählerstand = pd.DataFrame(zählerstand)
zählerstand['Date'] = pd.to_datetime(zählerstand['Date'].dt.tz_localize(False)
zählerstand.drop('Values', axis=1, inplace=True)
zählerstand['Values'].apply(pd.Series)[0].apply(pd.Series).drop(columns='Obis')
zählerstand3 = pd.concat([zählerstand1, zählerstand2], axis=1)
zählerstand3['Value']=zählerstand['Value'].astype(int)
zählerstand3 = zählerstand2.pivot(index=['Date'], columns=['DeviceId'])
return zählerstand3
Patricia