誰かが同じ問題を偶然見つけて、私の問題のための簡単な解決策に導いてくれることを願っています。FacebookのマーケティングAPI:Python経由で多くの広告のメタデータを取得する
Facebookの広告に関するデータを定期的に取得したいと考えています。基本的には、私はちょうどさらなる報告目的のために私のデータベースの1つにいくつかのメタデータを保存したいと思います。したがって、私はすべての広告に対してAD-ID、AD名、および対応するADSET-IDを取得したいと考えています。
私はPythonでこの小さな関数を書かれている:
def get_ad_stats(ad_account):
""" Pull basic stats for all ads
Args: 'ad_account' is the Facebook AdAccount object
Returns: 'fb_ads', a list with basic values
"""
fb_ads = []
fb_fields = [
Ad.Field.id,
Ad.Field.name,
Ad.Field.adset_id,
Ad.Field.created_time,
]
fb_params = {
'date_preset': 'last_14_days',
}
for ad in ad_account.get_ads(fields = fb_fields, params = fb_params):
fb_ads.append({
'id': ad[Ad.Field.id],
'name': ad[Ad.Field.name],
'adset_id': ad[Ad.Field.adset_id],
'created_time': datetime.datetime.strptime(ad[Ad.Field.created_time], "%Y-%m-%dT%H:%M:%S+0000"),
})
return (fb_ads)
同様の機能をキャンペーン単位とADSETデータ作業罰金のために。しかし、広告の場合、私はいつもユーザーリクエストの上限に達しています:"(#17) User request limit reached"
。
私はAPIアクセスレベルが「BASIC」で、ここでは約12,000件の広告について話しています。 残念ながら、非同期コールはInsightエッジでしか機能しないようです。
ユーザーのリクエスト制限を回避する方法はありますか?特定の日付以降に変更または新しく作成された広告のみにAPIリクエストを限定することによって、