_unpack_payload()¶
Class: JobsAustriaCacheSynchronizer
File: jobs_austria_cache_synchronizer.py ยท line 135
Expands the data_payload JSON column into individual columns.
Signature¶
| Parameters | df |
| Returns | not annotated |
| Async | No |
| Visibility | Private |
Implementation¶
def _unpack_payload(self, df: pd.DataFrame) -> pd.DataFrame:
"""Expands the data_payload JSON column into individual columns."""
def parse(x):
if pd.isna(x) or x == "":
return {}
try:
return json.loads(x) if isinstance(x, str) else x
except (json.JSONDecodeError, TypeError):
return {}
payloads = df['data_payload'].apply(parse).tolist()
df_payload = pd.DataFrame(payloads, index=df.index)
return pd.concat([df.drop(columns=['data_payload']), df_payload], axis=1)