我正在使用Facebook Python SDK查询Insights端点,并且很难做出响应我使用Python和随后的pandas.我做以下电话:
account = AdAccount('act_id') params = { 'fields': [Insights.Field.impressions,Insights.Field.clicks,Insights.Field.actions,Insights.Field.spend], 'breakdowns': [Insights.Breakdown.hourly_stats_aggregated_by_advertiser_time_zone], 'time_range': { 'since': 'start', 'until': 'end', }, 'action_attribution_windows': ['7d_click'], } result = account.get_insights(params=params) print (result)
它返回如下数据:
[{ "actions": [ { "7d_click": 600, "action_type": "custom_event_xyz", "value": 50 }, { "7d_click": 600, .... } ], "clicks": 1500, "date_start": "start", "date_stop": "end", "hourly_stats_aggregated_by_advertiser_time_zone": "00:00:00 - 00:59:59", "impressions": "60000", "spend": 60 }, { .... ]
将不包含actionsdata的数据放入pandas DataFrame时,我无法正确地展平操作数据,以便聚合级别一致(即"actions"键作为列标题).在线检查并在Stackoverflow上进行检查,使用python加载json并相应地处理它,然后使用pandas读取它们都是不起作用的选项.
总结我看不出如何优雅地挖掘响应的更深层嵌套部分,并轻松地使内容与其余部分兼容.