Estou desenvolvendo em Python uma API para puxar as métricas do Facebook ADS para uma planilha google, depois vamos levar isto para o DataStudio mas esta resolvido esta questão.
Bom vamos la, conseguimos puxar as informações que precisamos, mas segue os problemas que estamos enfrentando
1 - Sempre que puxamos as infos, elas vem em celular diferentes e nunca nas mesmas, preciso manter sempre nas mesmas
2 - algumas infos, vem com numero ( como preciso) e outras vem como exemplo a seguir.
Preciso de uma ajuda se alguem souber, empaquei nesta etapa e preciso finalizar este projeto vou enviar as linhas de programação a baixo, apenas nao terá os dados q estou usando.
------------------------------------------------------------------------------------------------------
from facebook_business.adobjects.adaccount import AdAccount
from facebook_business.adobjects.campaign import Campaign
from facebook_business.adobjects.adsinsights import AdsInsights
from facebook_business.api import FacebookAdsApi
from gspread_pandas import Spread, Client, conf
import pandas as pd
import datetime
from requests.api import post
app_id = 'info cliente'
app_secret = 'info cliente'
access_token = 'info cliente'
FacebookAdsApi.init(app_id, app_secret, access_token)
my_account = AdAccount('act_info cliente')
params = {
'date_preset': 'this_month',
'level': 'account',
}
fields = {
AdsInsights.Field.account_id,
AdsInsights.Field.account_name,
AdsInsights.Field.action_values,
AdsInsights.Field.actions,
AdsInsights.Field.ad_id,
AdsInsights.Field.ad_name,
AdsInsights.Field.adset_id,
AdsInsights.Field.adset_name,
AdsInsights.Field.campaign_id,
AdsInsights.Field.campaign_name,
AdsInsights.Field.cost_per_action_type,
AdsInsights.Field.cost_per_inline_link_click,
AdsInsights.Field.cost_per_inline_post_engagement,
AdsInsights.Field.cost_per_unique_click,
AdsInsights.Field.cpm,
AdsInsights.Field.cpp,
AdsInsights.Field.ctr,
AdsInsights.Field.date_start,
AdsInsights.Field.date_stop,
AdsInsights.Field.frequency,
AdsInsights.Field.impressions,
AdsInsights.Field.inline_link_clicks,
AdsInsights.Field.inline_post_engagement,
AdsInsights.Field.reach,
AdsInsights.Field.spend,
AdsInsights.Field.unique_clicks,
AdsInsights.Field.unique_ctr,
AdsInsights.Field.website_ctr
}
response = my_account.get_insights(params=params, fields=fields)
for i in response:
df = pd.DataFrame({})
for col in i:
df1 = pd.DataFrame({col: [i[col]]})
df = pd.concat([df, df1], axis=1, sort=False)
print(response)
print(df)
c = conf.get_config(
"local aonde esta o arquivo","credentials.json")
spread = Spread("nome planilha", config=c)
spread.df_to_sheet(
df, index=False, sheet='account', start='A1', replace=True)