【发布时间】:2022-01-13 16:04:32
【问题描述】:
我正在进行 api 调用,因此我必须每天手动更改有效负载中的 endDate。我不能在字典中使用 .format() 。有人可以帮忙吗?
当前有效负载:我在其中手动更改 endDate
payload = "{\"dimensions\":[\"AdsetId\",\"Adset\",\"CampaignId\",\"Campaign\",\"Device\",\"Day\",\"Month\",\"Year\",\"Week\",\"Os\"],\"metrics\":[\"AdvertiserCost\",\"Displays\",\"ClickThroughRate\",\"Cpc\",\"AppInstalls\",\"Clicks\"],\"timezone\":\"UTC\",\"advertiserIds\":\"69957\",\"currency\":\"USD\",\"startDate\":\"2022-01-01T00:00:00.0000000+00:00\",\"***endDate\":\"2022-01-13***T00:00:00.0000000+00:00\",\"format\":\"csv\"}"
预期有效载荷:
payload = "{\"dimensions\":[\"AdsetId\",\"Adset\",\"CampaignId\",\"Campaign\",\"Device\",\"Day\",\"Month\",\"Year\",\"Week\",\"Os\"],\"metrics\":[\"AdvertiserCost\",\"Displays\",\"ClickThroughRate\",\"Cpc\",\"AppInstalls\",\"Clicks\"],\"timezone\":\"UTC\",\"advertiserIds\":\"69957\",\"currency\":\"USD\",\"startDate\":\"2022-01-01T00:00:00.0000000+00:00\",\endDate\":\"{}T00:00:00.0000000+00:00\",\"format\":\"csv\"}".format(today)
今天是今天日期的变量
【问题讨论】:
-
***真的存在于有效负载中吗? -
不..让我编辑一下
-
你能发布一个更小的例子吗?我们不需要每个参数来查看问题。那是一个字符串,而不是字典,格式可以很好地使用它。那是JSON吗?您可以编写一个 python dict,添加您想要的日期并使用
json模块进行序列化。 -
虽然有可能,但正确的答案是根本不使用格式。它是 JSON 格式的字符串,所以使用
json.loads(payload)对其进行序列化,进行所有必要的修改并使用json.dumps(dictionary, separators=(',', ':'))(获取没有额外空格的 JSON 字符串所需的separators参数)将修改后的字典转换回字符串 .
标签: python api string.format