Resolver problemas de autenticação e autorização

Esta página descreve alguns problemas comuns que você pode encontrar envolvendo autenticação e autorização.

This app isn't verified

Se a tela de permissão OAuth exibir o aviso "Este app não foi verificado", seu app está solicitando escopos que fornecem acesso a dados confidenciais do usuário. Se o aplicativo usar escopos confidenciais, ele precisará passar pelo processo de verificação para remover esse aviso e outras limitações. Durante a fase de desenvolvimento, é possível continuar após esse aviso selecionando Avançado > Acessar {Nome do projeto} (não seguro).

File not found error for credentials.json

Ao executar o exemplo de código, você pode receber uma mensagem de erro "arquivo não encontrado" ou "arquivo não encontrado" referente ao credentials.json.

Esse erro ocorre quando você não autorizou as credenciais do aplicativo para computador. Saiba como criar credenciais para um aplicativo para computador em Criar credenciais.

Depois de criar as credenciais, verifique se o arquivo JSON transferido por download está salvo como credentials.json. Em seguida, mova o arquivo para o diretório de trabalho.

Token has been expired or revoked

Ao executar o exemplo de código, você pode receber a mensagem de erro "O token expirou" ou "O token foi revogado".

Esse erro ocorre quando um token de acesso do servidor de autorização do Google expirou ou foi revogado. Para informações sobre possíveis causas e correções, consulte Expiração do token de atualização.

Erros de Python

Veja a seguir alguns erros comuns do Python.

AttributeError: 'Module_six_moves_urllib_parse' object has no attribute 'urlparse'

Esse erro pode ocorrer no Mac OSX em que a instalação padrão do módulo six (uma dependência da biblioteca Python) é carregada antes do módulo instalado pelo pip. Para corrigir o problema, adicione o local de instalação do pip à variável de ambiente do sistema PYTHONPATH:

  1. Determine o local de instalação do pip:

    pip show six | grep "Location:" | cut -d " " -f2
    

    Anote esse local, porque ele será necessário para a próxima etapa.

  2. Adicione a seguinte linha ao arquivo ~/.bashrc, substituindo INSTALL_PATH pelo local determinado na etapa anterior:

    export PYTHONPATH=$PYTHONPATH:INSTALL_PATH
    
  3. Atualize o arquivo ~/.bashrc:

    source ~/.bashrc
    

TypeError: sequence item 0: expected str instance, bytes found

Esse erro ocorre devido a um bug em httplib2. Para resolver esse problema, faça upgrade para a versão mais recente do httplib2:

pip install --upgrade httplib2

Cannot uninstall 'six'

Ao executar o comando pip install, você pode receber o seguinte erro:

Cannot uninstall 'six'. It is a distutils installed project and thus we
cannot accurately determine which files belong to it which would lead to
only a partial uninstall.

Esse erro ocorre no Mac OSX quando o pip tenta fazer upgrade do pacote six pré-instalado. Para contornar esse problema, adicione a sinalização --ignore-installed six ao comando pip install.