sync_get_order_data.py 2.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. import time
  2. import warnings
  3. warnings.filterwarnings('ignore')
  4. from apscheduler.schedulers.blocking import BlockingScheduler
  5. from sync_amz_data.settings import MYSQL_AUTH_CONF, MYSQL_DATA_CONF
  6. from sync_amz_data.public import sp_api_client
  7. from datetime import datetime,timedelta
  8. def func_run():
  9. try:
  10. for days in (-2,-3):
  11. sp_api_client.SpApiRequest.get_allShops("GET_FLAT_FILE_ALL_ORDERS_DATA_BY_ORDER_DATE_GENERAL",days=days,**{})
  12. time.sleep(5)
  13. except Exception as e:
  14. print(e)
  15. try:
  16. count = 0
  17. for days in range(-2,-10,-1): #range(-58,-77,-1): #
  18. if count in (0,1):#[i for i in range(0,32)]:
  19. conn = sp_api_client.SpApiRequest.Data_auth()
  20. cursor = conn.cursor()
  21. delete_date = (datetime.now() + timedelta(days=days-7)).strftime("%Y-%m-%d")
  22. cursor.execute(f"delete from asj_ads.SalesAndTrafficByAsin where data_date='{delete_date}'")
  23. conn.commit()
  24. sp_api_client.SpApiRequest.get_allShops("GET_SALES_AND_TRAFFIC_REPORT", days=days-7, **{"level": "CHILD"})
  25. time.sleep(3.5)
  26. sp_api_client.SpApiRequest.get_allShops("GET_SALES_AND_TRAFFIC_REPORT", days=days-7, **{"level": "SKU"})
  27. time.sleep(3.5)
  28. sp_api_client.SpApiRequest.get_allShops("GET_SALES_AND_TRAFFIC_REPORT", days=days-7, **{"level": "PARENT"})
  29. time.sleep(3.5)
  30. count+=1
  31. sp_api_client.SpApiRequest.get_allShops("GET_SALES_AND_TRAFFIC_REPORT", days=days, **{"level": "CHILD"})
  32. time.sleep(3.5)
  33. sp_api_client.SpApiRequest.get_allShops("GET_SALES_AND_TRAFFIC_REPORT",days=days,**{"level":"SKU"})
  34. time.sleep(3.5)
  35. sp_api_client.SpApiRequest.get_allShops("GET_SALES_AND_TRAFFIC_REPORT",days=days,**{"level":"PARENT"})
  36. time.sleep(3.5)
  37. except Exception as e:
  38. print(e)
  39. # func_run()
  40. if __name__ == '__main__':
  41. sched = BlockingScheduler()
  42. sched.add_job(func_run, 'cron', hour=0, minute=0,
  43. second=30)
  44. sched.start()