尝试将 python 与 photos.capture_image() 一起用于 Kairos 注册 API

Trying to use python with photos.capture_image() for Kairos enroll API

我目前正在使用 Kairos API 并尝试使用 Pythonista 在我的 iPad 上拍一张新照片,然后将该照片上传到 Kairos enroll API .我能够使用 URL 图像使它正常工作,但对于我来说,我无法通过使用照片模块拍照来使它工作。根据我的理解,照片模块 returns 一个 PIL 图片,我 认为 我需要在上传到 Kairos 之前对其进行 base64 编码 API??

这是我没有使用照片模块的代码:

#import photos
import requests

#img = photos.capture_image()
url = "https://api.kairos.com/enroll"

values = """
  {
    "image": "https://images.pexels.com/photos/614810/pexels-photo-614810.jpeg?cs=srgb&dl=face-facial-hair-fine-looking-614810.jpg&fm=jpg",
    "subject_id": "test",
    "gallery_name": "test"
  }
"""

headers = {
    'Content-Type': 'application/json',
    'app_id': '********',
    'app_key': '************************'
}

request = requests.post(url, data=values, headers=headers)
response = request.content

print(response)

我希望有人能帮助我,告诉我我需要做什么才能完成这项任务。非常感谢任何帮助。

提前谢谢你,

科林

我能够通过使用 BytesIO 转换 PIL 图像然后使用 base64 编码来实现它:

with io.BytesIO() as output:
    img = photos.capture_image()
    img.save(output, 'JPEG')
    contents = output.getvalue()
    image = base64.b64encode(contents)

希望这对以后有所帮助。