我从远程服务器 Kafka Avro 接收 Python 消息(使用 Confluent Kafka Python 库的使用者),这些消息用带有用户代理、位置、url 等字段的 json 字典表示点击流数据。这是一条消息的样子:
b'\x01\x00\x00\xde\x9e\xa8\xd5\x8fW\xec\x9a\xa8\xd5\x8fW\x1axxx.xxx.xxx.xxx\x02:https://website.in/rooms/\x02Hhttps://website.in/wellness-spa/\x02\xaa\x14\x02\x9c\n\x02\xaa\x14\x02\xd0\x0b\x02V0:j3lcu1if:rTftGozmxSPo96dz1kGH2hvd0CREXmf2\x02V0:j3lj1xt7:YD4daqNRv_Vsea4wuFErpDaWeHu4tW7e\x02\x08null\x02\nnull0\x10pageview\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x10Thailand\x02\xa6\x80\xc4\x01\x02\x0eBangkok\x02\x8c\xba\xc4\x01\x020*\xa9\x13\xd0\x84+@\x02\xec\xc09#J\x1fY@\x02\x8a\x02Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Ubuntu Chromium/58.0.3029.96 Chrome/58.0.3029.96 Safari/537.36\x02\x10Chromium\x02\x10Chromium\x028Google Inc. and contributors\x02\x0eBrowser\x02\x1858.0.3029.96\x02"Personal computer\x02\nLinux\x02\x00\x02\x1cCanonical Ltd.'
Run Code Online (Sandbox Code Playgroud)
如何解码?我尝试了 bson 解码,但该字符串未被识别为 UTF-8,因为我猜它是特定的 Avro 编码。我找到了https://github.com/verisign/python-confluent-schemaregistry但它只支持 Python 2.7。理想情况下,我希望使用 Python 3.5+ 和 MongoDB 来处理数据并将其存储为我当前的基础架构。
我允许用户使用 Microsoft Graph API 使用 Outlook 帐户发送电子邮件,但它似乎在另一端创建多个线程。
当使用 Mailgun API 发送用户电子邮件时,我能够传递引用前一条消息 Message-ID 的 In-Reply-To 消息标头,并且线程由另一端的客户端(Outlook/Gmail 等)正确集群
但是,当使用 Microsoft Graph API 时,我尝试传递 In-Reply-To,但 API 不接受它
graph_url = 'https://graph.microsoft.com/v1.0'
headers = {
'User-Agent': 'api/1.0',
'Authorization': f'Bearer {outlook_token}',
'Accept': 'application/json',
'Content-Type': 'application/json'
}
# Create recipient list in required format.
recipient_list = [{'emailAddress': {'name': name, 'address': address}} for name, address in recipients]
reply_to_list = [{'emailAddress': {'name': name, 'address': address}} for name, address in reply_to]
# Create email message in required format.
email_object = …Run Code Online (Sandbox Code Playgroud)