start_sync_amz.py 4.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687
  1. from sync_amz_data.tasks.account import AccountTask
  2. from sync_amz_data.settings import LOG_CONF
  3. import logging.config
  4. logging.config.dictConfig(LOG_CONF)
  5. from sync_amz_data.DataTransform import Data_ETL
  6. from sync_amz_data.DataTransform.Data_ETL import Common_ETLMethod,SP_ETL,SB_ETL,SD_ETL
  7. from apscheduler.schedulers.blocking import BlockingScheduler
  8. def amz_report(AWS_CREDENTIALS,para={}):
  9. conn = SB_ETL(**AWS_CREDENTIALS).clickhouse_connect()
  10. sb_report = SB_ETL(**AWS_CREDENTIALS)
  11. sb_report.reportV3_purchasedAsinRecord_ETL(conn,params=para)
  12. sb_report.reportV2_campaignsRecord_ETL(conn,params=para)
  13. sb_report.reportV2_campaignsVideo_ETL(conn,params=para)
  14. sb_report.reportV2_adGroupsRecord_ETL(conn,params=para)
  15. sb_report.reportV2_adGroupsVideo_ETL(conn,params=para)
  16. sb_report.reportV2_adsRecord_ETL(conn,params=para)
  17. sb_report.reportV2_adsVideo_ETL(conn,params=para)
  18. sb_report.reportV2_keywordsRecord_ETL(conn,params=para)
  19. sb_report.reportV2_keywordsVideo_ETL(conn,params=para)
  20. sb_report.reportV2_placementRecord_ETL(conn,params=para)
  21. sb_report.reportV2_placementVideo_ETL(conn,params=para)
  22. sb_report.reportV2_searchtermsRecord_ETL(conn,params=para)
  23. sb_report.reportV2_searchtermsVideo_ETL(conn,params=para)
  24. sb_report.reportV2_targetsRecord_ETL(conn,params=para)
  25. sb_report.reportV2_targetsVideo_ETL(conn,params=para)
  26. conn.close()
  27. conn = SP_ETL(**AWS_CREDENTIALS).clickhouse_connect()
  28. sp_report = SP_ETL(**AWS_CREDENTIALS)
  29. sp_report.reportV3_campaign_spCampaignsETL(conn,params=para)
  30. sp_report.reportV3_adGroup_spCampaignsETL(conn,params=para)
  31. sp_report.reportV3_campaignPlacement_spCampaignsETL(conn,params=para)
  32. sp_report.reportV3_targeting_spTargetingETL(conn,params=para)
  33. sp_report.reportV3_searchTerm_spSearchTermETL(conn,params=para)
  34. sp_report.reportV3_advertiser_spAdvertisedProductETL(conn,params=para)
  35. sp_report.reportV3_asin_spPurchasedProductETL(conn,params=para)
  36. conn.close()
  37. conn = SD_ETL(**AWS_CREDENTIALS).clickhouse_connect()
  38. sd_report = SD_ETL(**AWS_CREDENTIALS)
  39. sd_report.reportV3_campaign_sdCampaigns_ETL(conn,params=para)
  40. sd_report.reportV3_campaignMT_sdCampaigns_ETL(conn,params=para)
  41. sd_report.reportV3_adgroup_sdAdGroup_ETL(conn,params=para)
  42. sd_report.reportV3_adgroupMT_sdAdGroup_ETL(conn,params=para)
  43. sd_report.reportV3_targeting_sdTargeting_ETL(conn,params=para)
  44. sd_report.reportV3_targetingMT_sdTargeting_ETL(conn,params=para)
  45. sd_report.reportV3_asin_sdPurchasedProduct_ETL(conn,params=para)
  46. sd_report.reportV3_advertiser_sdAdvertisedProduct_ETL(conn,params=para)
  47. # sd_report.reportV2_campaignsRecord_t2_ETL(conn,params=para)
  48. # sd_report.reportV2_campaignsRecord_t3_ETL(conn,params=para)
  49. # sd_report.reportV2_adGroupsRecord_t2_ETL(conn,params=para)
  50. # sd_report.reportV2_adGroupsRecord_t3_ETL(conn,params=para)
  51. # sd_report.reportV2_asins_t2_ETL(conn,params=para)
  52. # sd_report.reportV2_asins_t3_ETL(conn,params=para)
  53. # sd_report.reportV2_productAds_t2_ETL(conn,params=para)
  54. # sd_report.reportV2_productAds_t3_ETL(conn,params=para)
  55. # sd_report.reportV2_targets_t2_ETL(conn,params=para)
  56. # sd_report.reportV2_targets_t3_ETL(conn,params=para)
  57. # sd_report.reportV2_campaign_matchedTarget_t2_ETL(conn,params=para)
  58. # sd_report.reportV2_campaign_matchedTarget_t3_ETL(conn,params=para)
  59. # sd_report.reportV2_adGroups_matchedTarget_t2_ETL(conn,params=para)
  60. # sd_report.reportV2_adGroups_matchedTarget_t3_ETL(conn,params=para)
  61. # sd_report.reportV2_targets_matchedTarget_t2_ETL(conn,params=para)
  62. # sd_report.reportV2_targets_matchedTarget_t3_ETL(conn,params=para)
  63. conn.close()
  64. if __name__ == '__main__':
  65. # AccountTask("3006125408623189").do({"record": "portfolios"})
  66. AWS_CREDENTIALS = {
  67. 'lwa_client_id': 'amzn1.application-oa2-client.ebd701cd07854fb38c37ee49ec4ba109',
  68. 'refresh_token': "Atzr|IwEBIL4ur8kbcwRyxVu_srprAAoTYzujnBvA6jU-0SMxkRgOhGjYJSUNGKvw24EQwJa1jG5RM76mQD2P22AKSq8qSD94LddoXGdKDO74eQVYl0RhuqOMFqdrEZpp1p4bIR6_N8VeSJDHr7UCuo8FiabkSHrkq7tsNvRP-yI-bnpQv4EayPBh7YwHVX3hYdRbhxaBvgJENgCuiEPb35Q2-Z6w6ujjiKUAK2VSbCFpENlEfcHNsjDeY7RCvFlwlCoHj1IeiNIaFTE9yXFu3aEWlExe3LzHv6PZyunEi88QJSXKSh56Um0e0eEg05rMv-VBM83cAqc5POmZnTP1vUdZO8fQv3NFLZ-xU6e1WQVxVPi5Cyqk4jYhGf1Y9t98N654y0tVvw74qNIsTrB-8bGS0Uhfe24oBEWmzObvBY3zhtT1d42myGUJv4pMTU6yPoS83zhPKm3LbUDEpBA1hvvc_09jHk7vUEAuFB-UAZzlht2C1yklzQ",
  69. 'lwa_client_secret': 'cbf0514186db4df91e04a8905f0a91b605eae4201254ced879d8bb90df4b474d',
  70. 'profile_id': "3006125408623189"
  71. }
  72. timezone_ = Common_ETLMethod(**AWS_CREDENTIALS).timeZone()
  73. print(timezone_)
  74. sched = BlockingScheduler()
  75. sched.add_job(lambda: amz_report(AWS_CREDENTIALS=AWS_CREDENTIALS),'cron',hour=17,minute=0,second=0,timezone=timezone_)#,params={"startDate":"2023-11-04","endDate":"2023-11-04","date":"20231104"}
  76. sched.start()