我是Python新手,正在尝试编写一个脚本来控制Facebook的营销API中的活动预算。你不需要了解Facebook营销平台就可以帮助我,因为这主要是一个与Python相关的问题,因为我是Python新手,不知道如何编写这些代码。在
#==========specify account ID in which the campaign you want to budget control resides=========================
AD_ACCOUNT_ID = 'act_4534633563'
#===============================================================================
campaign = Campaign(34635645764574)
fields = [
AdSet.Field.name,
AdSet.Field.lifetime_budget,
]
adsets = campaign.get_ad_sets(fields=fields)
with open('data.json', 'w') as f:
for adset in adsets:
print(adset[AdSet.Field.name])
json.dump(adset, f)
结果:
^{pr2}$这个脚本应该允许活动级别的预算控制,方法是在一天开始时将给定活动的广告集id和生存期预算存储到JSON中。然后,这个脚本每6小时轮询一次生存期预算,用每天早上存储在JSON文件中的生存期预算减去当前的生存期预算(实时数据值)。如果所有广告集生存期的累计预算达到用户指定的当天活动预算,则活动将暂停一天,然后在第二天重新启动。在
我有几个问题。。。。。在
我如何克服这个JSON问题,即我试图存储的数据不可序列化?
如何存储/读取JSON对象以便减去生存期预算?
在Python中我能做些什么让脚本每天运行并运行一整天,然后在一天结束时关闭呢。
不能序列化自定义对象。相反,您可以使用所需的值创建一个python字典,然后将其序列化:
使用JSON存储和读取非常简单:json.dump文件()和json.load文件()
对于每天运行脚本,我建议使用linux机器(或虚拟机)并设置Cron作业(Cron用于在linux中调度任务)。我确信在windows中有一个等效的方法来实现这一点,但我不知道怎么做。在
sdk正在使用它自己的dict值作为对象。使用python的内置函数covert to str。而且,您实际上不需要使用Json转储,您只需将str转换为csv,然后再转换为pandas df。在
相关问题 更多 >
编程相关推荐