Esse é um código em Python que funciona como um chatbot no Telegram. O objetivo é extrair informações de um motorista de uber, como nome, placa do carro e modelo do carro, a partir de uma imagem de tela do aplicativo de transporte do motorista enviada para o chatbot. O código utiliza a API do Google Vision para fazer a análise da imagem e reconhecimento de texto (OCR), e a API do Google Sheets para armazenar os dados extraídos. o projeto foi criado apenas para uso pessoal com o objetivo de obter um regitros dos motoristas que cancelam a corrida.
- telebot: biblioteca para integração com o Telegram;
- google.cloud.vision: biblioteca para utilização do Google Vision;
- os: biblioteca para acesso ao sistema operacional, utilizada para definir as credenciais do Google Vision;
- re: biblioteca para operações de expressões regulares;
- google.oauth2.service_account: biblioteca para autenticação via credenciais;
- googleapiclient.discovery: biblioteca para utilização das APIs do Google.
Antes de executar o código, é necessário criar as credenciais para a API do Google Vision e do Google Sheets. Em seguida, é necessário criar um bot no Telegram e obter sua chave de API. Esses dados devem ser adicionados no código, nas linhas que iniciam com os.environ['GOOGLE_APPLICATION_CREDENTIALS'] e CHAV_API, respectivamente.
Após configurar as credenciais, é possível executar o código em um ambiente Python. Ao executar o código, o bot estará ativo e pronto para receber comandos do usuário.
Os comandos disponíveis são:
- /start ou /help: exibe uma mensagem de boas-vindas e instruções de uso do bot;
- /nome Fulano: busca o nome do motorista na planilha do Google Sheets;
- /placa dados: busca informações do carro do motorista (placa e modelo) na planilha do Google Sheets;
- Enviar o print: envia a foto para o google vision que retorna com os dados encontrados pelo re (Regular expression operations).
O usuário deve enviar uma imagem da tela do aplicativo de transporte do motorista para o bot. O bot irá utilizar a API do Google Vision para extrair o texto da imagem e buscar as informações na planilha do Google Sheets. Se as informações forem encontradas, o bot irá retorná-las ao usuário no chat.
- A extração de informações pode falhar se a qualidade da imagem enviada pelo usuário não for boa o suficiente para o OCR.
- A extração de informações pode falhar se os dados do motorista não estiverem na planilha do Google Sheets.