Browse Source

use get_keyOvalue

huangyifan 1 year ago
parent
commit
a6cbd42820
1 changed files with 8 additions and 5 deletions
  1. 8 5
      sync_amz_data/DataTransform/Data_ETL.py

+ 8 - 5
sync_amz_data/DataTransform/Data_ETL.py

@@ -464,8 +464,9 @@ class SB_ETL(SBClient, Common_ETLMethod):
         list_targets = list(self.iter_targets())
         df_targets = pd.json_normalize(list_targets)
         # df_targets = self.TZ_Deal(df_targets, ["extendedData.creationDateTime", "extendedData.lastUpdateDateTime"])
-        df_targets = self.expression_split(df_targets, "resolvedExpressions")
-
+        # df_targets = self.expression_split(df_targets, "resolvedExpressions")
+        df_targets['resolvedExpressions_type'] = df_targets['resolvedExpressions'].map(lambda x:self.get_keyOvalue(x,'type'))
+        df_targets['resolvedExpressions_value'] = df_targets['resolvedExpressions'].map(lambda x:self.get_keyOvalue(x,'value'))
         return self.columnsName_modify(df_targets)
 
     def budget_ETL(self, campaign_ids: list):
@@ -958,7 +959,9 @@ class SD_ETL(SDClient, Common_ETLMethod):
     def targets_ETL(self, **param):
         list_targets = [row for _ in list(self.iter_targets(**param)) for row in _]
         df_targets = pd.json_normalize(list_targets)
-        df_targets = self.expression_split(df_targets, "resolvedExpression")
+        # df_targets = self.expression_split(df_targets, "resolvedExpression")
+        df_targets['resolvedExpressions_type'] = df_targets['resolvedExpressions'].map(lambda x:self.get_keyOvalue(x,'type'))
+        df_targets['resolvedExpressions_value'] = df_targets['resolvedExpressions'].map(lambda x:self.get_keyOvalue(x,'value'))
         return self.columnsName_modify(df_targets)
 
     def budget_ETL(self, campaignsIds: list):
@@ -1454,10 +1457,10 @@ if __name__ == '__main__':
     conn = Common_ETLMethod(**AWS_CREDENTIALS).clickhouse_connect()
 
     # SD
-    ac_etl = SD_ETL(**AWS_CREDENTIALS)
+    ac_etl = SB_ETL(**AWS_CREDENTIALS)
     ls = ac_etl.targets_ETL()
     print(ls)
-    print(ls.tail(20).to_excel('obse1.xlsx'))
+    print(ls.to_excel('obse111.xlsx'))
     # ac_etl.reportV2_campaignsRecord_t2_ETL(conn)
     # ac_etl.reportV2_campaignsRecord_t3_ETL(conn)
     # ac_etl.reportV2_adGroupsRecord_t2_ETL(conn)