0

soumis le travail en mode asynchrone pour tirer les données de perspicacité d'annonce de facebook en utilisant facebookads api.facebookads api travail asynchrone vérifier le statut et obtenir le résultat plus tard

r = ad_account.get_insights(params=params, async=True) 

stockaient le report_run_id

Je veux vérifier l'état de ce travail dans différents code python et tirer le résultat dans ce script au lieu de même script.

Si c'est dans le même travail, je sais comment vérifier l'état et obtenir le résultat.

while r[AdReportRun.Field.async_percent_completion] < 100: 
      time.sleep(5) 
      r.remote_read() 
    result = r.get_result() 

autrement dit, si j'ai des données (il a la colonne report_run_id). Comment vérifier l'état du travail et obtenir le résultat.

Planification du déplacement de ce script sur google appengine, google appengine dispose d'une fenêtre d'expiration de 60 secondes. Donc, j'ai besoin de vérifier l'état du travail plus tard et si le travail est réussi tirer les données et charger dans BigQuery.

Répondre

0

Nous pouvons télécharger le rapport de l'URL suivante. Besoin de remplacer le report_run_id et access_token.

Vérifiez si le rapport est prêt ou non à l'adresse suivante:

"https://graph.facebook.com/v2.9/ "+ report_run_id +"? Fields = async_status, async_percent_completion & appsecret_proof =" + config [ 'appsecret_proof'] + "& access_token =" + config [ 'access_token'] + » & app_secret = "+ config [ 'app_secret']

Télécharger le rapport avec l'URL suivante:

" https://www.facebook.com/ads/ads_insights/export_report?report_run_id= "+ report_run_id +" & format = c sv & access_token = "+ config ['access_token']