Coder Social home page Coder Social logo

mateusfg7 / textanalysis Goto Github PK

View Code? Open in Web Editor NEW
8.0 3.0 2.0 1 MB

:page_facing_up: Programa em python que realisa análise em texto usando recursos da API Algorithmia.

Home Page: https://algorithmia.com

License: MIT License

Python 100.00%
python3 analysis text algorithmia-api algorithmia analise texto api matplotlib matplotlib-pyplot

textanalysis's Introduction

Text Analysis :shipit:

Programa em python que realiza análise em texto usando recursos da API Algorithmia

CodeFactor

Index

  1. Funções
  2. Dependências
  3. Uso
  4. API Key
  5. Créditos
  6. Doe

Funções:

  • Obter tags a partir de um texto.

  • Obter grau de sentimentos positivos, negativos e neutros.

  • Resumir um texto.

  • Obter nomes de entidades presentes no texto.

  • Obter a frequência de determinadas palavras em um texto.

  • Contar número de palavras em um texto.

  • Extrair emails presente no texto.

  • Extrair datas presente no texto.

Dependências:

Instale usando o arquivo de dependências do Python:

python3 -m pip install -r requirements.txt

Ou

instale as dependências separadamente:

Algorithmia

python3 -m pip install algorithmia

GoogleTrans

python3 -m pip install googletran

Uso

Ao executar o arquivo Analysis.py irá pedir a chave de autenticação da API Algorithia, para cria-la va ate API Key.

Logo após ira pedir oque vc deseja analisar, se é um arquivo de texto ou se é um texto plano (apenas uma fraze a ser passada no próprio terminal)

Depois irá aparecer um menu para escolher qual a função desejada.

Exêmplos de uso:

1 - Opção 2 - extrair tags em um texto no arquivo 'turing.txt'

['após', 'computação', 'foi', 'para', 'pela', 'química', 'turing', 'uma']

2 - Opção 5 - pegar a frequência das palavras mais comuns em um texto no arquivo 'turing.txt'

1ª Palavra mais comum: de
Frequência: 21

2ª Palavra mais comum: a
Frequência: 10

3ª Palavra mais comum: da
Frequência: 10

4ª Palavra mais comum: um
Frequência: 10

5ª Palavra mais comum: e
Frequência: 8

Conseguir Algorithmia API Key

  1. Entre no site Algorithmia.com e clique em Try it For Free step1

  2. Preencha as informações e crie sua conta step2 step3

  3. Clique no botão API Keys e copie a chave gerada automaticamente (default-key) step4 step5

  4. _Cole sua api key e clique enter step5

a api key fica salva em auth/keys.json

Créditos


Doe ❤️

Bitcoin: bc1qzdr4z8sxhumv68s2l97rj0pjum2tnr745uh8us
Bitcoin Cash: qr4glglnc66desgumtjattkxmps999twg50wyd7ymy
Ethereum: 0x4a576AC4b87e3F22700dd3462e02d863Ce2B8817
Litecoin: ltc1qnrdjc633fx03r98gazjqjeqdz0svs45l9mypfr
Dash: Xp9JFeALHdLr9FNbkE6Na3xMqRRTs75YWx

textanalysis's People

Contributors

mateusfg7 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

textanalysis's Issues

New Features

  • ProgrammingLanguageIdentification - link
  • DateExtractor - link
  • WordCounter - link
  • Contar quantas letras tem no texto
  • Text2Emoji - link
  • NumberExtractor - link
  • Sylllables - link
  • EmailExtractor - link
  • Html2Text - link
  • SmartTextExtraction - link

Bugs Fixes

  • reconhecimento_de_entidades.py - bug ao tentar analisar um arquivo de texto em branco
Traceback (most recent call last):
  File "analysis.py", line 56, in <module>
    reconhecimento_de_entidades(client, ler_arquivo())
  File "/home/mateusfg7/Documentos/Projects/textAnalysis/functions/reconhecimento_de_entidades.py", line 10, in reconhecimento_de_entidades
    wordlist = resultado['sentences'][numeroDeEntidadesEncontradas - 1]['detectedEntities']
IndexError: list index out of range
  • reconhecimento_de_entidades.py - bug quando o algorítimo não encontra nenhuma entidade
Traceback (most recent call last):
  File "analysis.py", line 56, in <module>
    reconhecimento_de_entidades(client, ler_arquivo())
  File "/home/mateusfg7/Documentos/Projects/textAnalysis/functions/reconhecimento_de_entidades.py", line 14, in reconhecimento_de_entidades
    sys.exit(1)
NameError: name 'sys' is not defined
  • menu - bug ao iniciar o programa sem passar um parâmetro
Traceback (most recent call last):
  File "analysis.py", line 43, in <module>
    if sys.argv[1] == "-t" :
IndexError: list index out of range
  • Internet Connection - erro ao executar o algorítimo sem conexão com a internet

Updates

  • feelingAnalisys.py - mudar o valor obtido de decimal para inteiro
  • dependências do python
    python3 -m pip install -r requeriments.txt
  • frequencieOfWords.py - adicionar gráfico indicando a frequência de cada palavra com a biblioteca matplotlib
  • Poder passar uma única palavra/frase em vez de um arquivo com um texto
  • Adicionar requisição de credencial da Algorithmia privada do usuário

TypeError

error at auth/__init__.py

Traceback (most recent call last):
  File "analysis.py", line 10, in <module>
    from auth import getKey
  File "/home/mateusfg7/Desktop/textAnalysis/auth/__init__.py", line 4, in <module>
    def getKey(readFile, str2json) -> Optional[dict, bool]:
  File "/usr/lib/python3.8/typing.py", line 261, in inner
    return func(*args, **kwds)
  File "/usr/lib/python3.8/typing.py", line 364, in __getitem__
    arg = _type_check(parameters, "Optional[t] requires a single type.")
  File "/usr/lib/python3.8/typing.py", line 149, in _type_check
    raise TypeError(f"{msg} Got {arg!r:.100}.")
TypeError: Optional[t] requires a single type. Got (<class 'dict'>, <class 'bool'>).

MENU VISUAL

Pretendo adicionar um menu visual ao programa, assim que inicia, ja com as opções para escolher, sem precisar passar tudo como flags via CLI.

Porem quero manter a versão com flags CLI, podendo assim a pessoa escolher qual usar.
Quero fazer com que ambos consigam usar as mesmas funções sem maiores problemas.

o processo esta sendo feito na branch visual_menu com o arquivo AnalysisGUI.py

Documentação - README.md

  • corrigir erros de ortografia
  • especificar o funcionamento da função -f (calcular a frequência das palavras mais comuns de um texto)
  • detalhar melhor como usar o algorítimo
  • alterar o modo de instalação das dependências #3
    python3 -m pip install -r requeriments.txt

test

  • test
  • test
  • test
  • test

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.