Как получить все тело сообщения, используя Gmail API (python) - PullRequest
0 голосов
/ 31 мая 2018

Я хочу извлечь весь текст сообщения с помощью API Gmail.Прямо сейчас я использую фрагменты, но мне нужен весь текст.Я искал и обнаружил, что это как-то связано с полезной нагрузкой, но я не понял как.Может кто-нибудь показать мне пример?Кроме того, я использую API Gmail через Python.

1 Ответ

0 голосов
/ 01 июня 2018

Используйте Users.messages.get из документов, где есть фрагмент Python:

import base64
import email
from apiclient import errors

def GetMessage(service, user_id, msg_id):

  try:
    message = service.users().messages().get(userId=user_id, id=msg_id).execute()
    print 'Message snippet: %s' % message['snippet']
    return message
  except errors.HttpError, error:
    print 'An error occurred: %s' % error

def GetMimeMessage(service, user_id, msg_id):

  try:
    message = service.users().messages().get(userId=user_id, id=msg_id, format='raw').execute()
    print 'Message snippet: %s' % message['snippet']
    msg_str = base64.urlsafe_b64decode(message['raw'].encode('ASCII'))
    mime_msg = email.message_from_string(msg_str)

    return mime_msg
  except errors.HttpError, error:
    print 'An error occurred: %s' % error

То, что вы пытаетесь получить, - payload.body илиесли вы хотите пойти дальше, payload.body.data .

...