API GMAIL: пересылать все клиентские сообщения Gmail на адрес Gmail с помощью API Gmail - PullRequest
0 голосов
/ 10 ноября 2018

В настоящее время я пишу программу для пересылки всех сообщений Gmail пользователей на адрес Gmail, с которого я получил помощь: Ссылка Я создал все хранилище, файл учетных данных и т. Д., Но когда я пытаюсь запуститьпрограмма выдает ошибку:

Traceback (most recent call last):
  File "hh.py", line 40, in <module>
    thadari()
  File "hh.py", line 30, in thadari
    result = GMAIL.users().settings().forwardingAddresses().create(userId='me', body=address).execute()
  File "/home/vishalthadari/Documents/Seperation 1/virutalenv/python 3/env/lib/python3.6/site-packages/googleapiclient/_helpers.py", line 130, in positional_wrapper
    return wrapped(*args, **kwargs)
  File "/home/vishalthadari/Documents/Seperation 1/virutalenv/python 3/env/lib/python3.6/site-packages/googleapiclient/http.py", line 842, in execute
    raise HttpError(resp, content, uri=self.uri)
googleapiclient.errors.HttpError: <HttpError 403 when requesting https://www.googleapis.com/gmail/v1/users/me/settings/forwardingAddresses?alt=json returned "Insufficient Permission">

Я уже дал разрешение на отправку почты, но я не знаю, почему она выдает ошибку. Нет места для пересылки сообщения, как я прочитал здесь: ссылка Или мне для этого нужно купить google google?который определен здесь: Ссылка в gmail.settings.sharing

Я знаю, что всю стену кода нельзя использовать повторно, но, поскольку я новичок в Google API, я думаю, что их небольшие незначительные ошибки вмой код:

from apiclient import discovery
from apiclient import errors
from httplib2 import Http
from oauth2client import file, client, tools
import base64
from bs4 import BeautifulSoup
import re
import time
import dateutil.parser as parser
from datetime import datetime
import datetime
import csv



def thadari():
    SCOPES = 'https://www.googleapis.com/auth/gmail.send'
    store = file.Storage('storage.json')
    creds = store.get()
    if not creds or creds.invalid:
        flow = client.flow_from_clientsecrets('client_secret.json', SCOPES)
        creds = tools.run_flow(flow, store)
    GMAIL = discovery.build('gmail', 'v1', http=creds.authorize(Http()))

    user_id = 'me'
    label_id_one = 'INBOX'


    address = {'forwardingEmail': 'girlsdontloveme75@gmail.com'}
    result = GMAIL.users().settings().forwardingAddresses().create(userId='me', body=address).execute()
    if result.get('verificationStatus') == 'accepted':
        body = {
        'emailAddress': result.get('forwardingEmail'),
        'enabled': True,
        'disposition': 'trash'
    }   


if __name__ == '__main__':
    thadari()

Это правильный способ сделать это?или есть лучший способ сделать это, пожалуйста, помогите мне

Заранее спасибо

...