+关注
已关注

分类  

暂无分类

标签  

暂无标签

日期归档  

暂无数据

使用循环遍历Facebook get_insights的日期

发布于2021-04-12 14:55     阅读(183)     评论(0)     点赞(6)     收藏(2)


0

1

2

3

4

5

6

7

8

9

我是Python的新手,正在尝试与Facebook建立API连接以提取广告系列数据。我想一次提取6到12个月,而Facebook API似乎无法处理这个问题-因此,我试图编写一个脚本来使用循环一次提取一天所需的数据。

我正在尝试使用下面的代码,但是这只拉了一天-范围的最后一天。有人可以纠正我哪里出问题了吗?

today = datetime.now().date()
yesterday = today - timedelta(days=1)

start_date = date(2020, 8, 10)
end_date = today
day_count = (end_date - start_date).days
day = timedelta(days=1)

date = start_date
for i in range(day_count):
    date += day

fields = [
    'campaign_name',
    'reach',
    'impressions',
    'frequency',
    'clicks',
    'spend', ]

params = {
    'level': 'campaign',
    'filtering': [],
    'breakdowns': [],
    'time_range': {'since': str(date),
                   'until': str(date)},
    'time_increment': '1',
    "limit": 1000}

results = my_account.get_insights(fields=fields,
                                  params=params)

解决方案


从缩进来看,您似乎首先是在进行for循环,完成后便是在调用get_insights函数。这样,for循环将使您从start_date到今天为止的所有日子,最后直到今天,结果才调用get_insights。

对此的解决方案是只是缩进得当,这样的结果将是内部的for循环。

还要注意的另一件事是,您将结果= ... get_insights(...)放在一遍又一遍,当然会覆盖for循环中的结果,最后保留了今天的洞察力。

为了解决这个问题,您可以在for循环之前创建一个空列表,并在获取见解时将其追加到列表中。

代码如下所示:

   today = datetime.now().date()
   yesterday = today - timedelta(days=1)

   start_date = date(2020, 8, 10)
   end_date = today
   day_count = (end_date - start_date).days
   day = timedelta(days=1)

   date = start_date

   results = []
   for i in range(day_count):
      date += day
  
      fields = [
         'campaign_name',
         'reach',
         'impressions',
         'frequency',
         'clicks',
         'spend',]

      params = {
        'level': 'campaign',
        'filtering': [],
        'breakdowns': [],
        'time_range': {'since': str(date),
        'until': str(date)},
        'time_increment': '1',
        'limit': 1000}

      results.append(my_account.get_insights(fields=fields,
            params=params))

最后,结果将是给定范围内所有日期的洞察力列表。

0

1

2

3

4

5



所属网站分类: 技术文章 > 问答

作者:黑洞官方问答小能手

链接: https://www.pythonheidong.com/blog/article/936032/c69af00d43490d88d41f/

来源: python黑洞网

任何形式的转载都请注明出处,如有侵权 一经发现 必将追究其法律责任

6 0
收藏该文
已收藏

评论内容:(最多支持255个字符)