如何自动执行此sendinblue api?

时间:2019-09-13 19:51:47

标签: python django sendinblue

尝试自动将联系人添加到sendinblue的api。他们网站上给出的示例显示添加电子邮件,然后将其添加到您帐户的列表中。

我尝试过fstrings和.format(电子邮件,行业,角色),但是由于某些原因,它总是会抛出错误。

此处显示了其网站上显示的内容。

import requests

url = "https://api.sendinblue.com/v3/contacts"

payload = "{\"email\":\"someonesEmail97@gmail.com\",\"listIds\":[1,4],\"updateEnabled\":false}"
headers = {
    'accept': "application/json",
    'content-type': "application/json"
    }

response = requests.request("POST", url, data=payload, headers=headers

这就是我尝试过的

import requests

url = "https://api.sendinblue.com/v3/contacts"

payload = "{\"email\":\f"{email}"\",\"listIds\":[f"{industry}",f"{role}"],\"updateEnabled\":false}"
headers = {
    'accept': "application/json",
    'content-type': "application/json"
    }

response = requests.request("POST", url, data=payload, headers=headers)

我希望在我的网站的注册部分使用此密码,以便它将获取经过身份验证的电子邮件,并将其添加到我设置的适当列表中。但是我从使用fstrings中学到的是终端中指向电子邮件字段的语法无效。 然后,我尝试使用.format,但在终端上未显示任何错误,但是在网页上我又收到了该错误


payload = "{\"email\":\{}\",\"listIds\":[{},{}],\"updateEnabled\":false}".format(email, industry, role)

在/ accounts / signup / activate /中的

KeyError “'电子邮件'” 指向有效负载打开的行。

我想念什么?感谢您的阅读

1 个答案:

答案 0 :(得分:1)

  

我从使用fstrings中获得的收益是终端中的无效语法   指向电子邮件字段

那是因为您的报价不匹配,并且您试图以一种奇怪的,无效的方式来创建f字符串。

尝试一下:

payload = f'{{"email":"{email}","listIds":[{industry},{role}],"updateEnabled":false}}'