python - 如何使用 Python 在 Gmail API 和 JSON 中获取嵌套数据
问题描述
我无法访问 Gmail 的 Python API 中的嵌套值和键。我快接近了,但我不知道如何访问它的值。如何从“主题”和“发件人”部分中提取数据。
for message in messages:
msg = service.users().messages().get(userId='me', id=message['id']).execute()
subject = msg['payload']['headers']
for values in subject:
name = values['name'] #This only prints the values "From" and "Subject" by itself not with the actual subject.
print(values)
print("\n")
print(values) 返回以下 json 数据(还有几十行,而且计数并不总是相同,所以我不确定硬编码整数是否有帮助。
{'name': 'From', 'value': 'Duolingo <hello@duolingo.com>'}
{'name': 'Subject', 'value': ' Your weekly progress report'}
如何在这两个中仅获取“值”右侧的数据?例如,“您的每周进度报告”?
解决方案
添加一个变量
value = values['value']
应该为您提供该输出的值
看起来您标记的主题实际上是主题的组合,它来自谁以及其他数据的声音,所以我可能会将该变量更改为 email_data
所以生成的代码将是
for values in email_data:
name = values['name']
value = values['value']
print(values)
print("\n")
推荐阅读
- reactjs - 与 react-redux-firebase 反应 isLoaded 是真的, isEmpty 似乎是假的,但 firebase.auth().currentUser 是 null - 可能是什么原因?
- mysql - 通过 lambda 函数获取时,从 mysql 插入的数据需要一些时间才能出现
- entity-framework - 为什么点网核心从表和属性名称中删除下划线?
- file - 如何为 xip temp 选择文件夹位置
- javascript - 如何在打字稿中键入固定长度的生成器?
- firebase-cloud-messaging - 在后台(服务人员)时收到两次 FCM 通知
- dependency-injection - 如何使用 Azure Durable Functions 在注入的类中访问 DurableEntityClient
- html - 通过单击输入显示框
- angular - 使用 ngModel 和 ngModelChange 从多选中获取值不起作用
- python - 谁能解释我为什么会收到这个错误?