gpassero / cogroo4py Goto Github PK
View Code? Open in Web Editor NEWUma interface para acessar o analisador morfológico do CoGrOO em Python.
License: Apache License 2.0
Uma interface para acessar o analisador morfológico do CoGrOO em Python.
License: Apache License 2.0
Basicamente estou encontrando um erro ao tentar executar o comando:
$python -m pip install cogroo4py
Comportamento esperado:
Dependências serem instaladas com sucesso
Comportamento observado:
"
Collecting cogroo4py
Using cached cogroo4py-0.4.6-py3-none-any.whl (32.7 MB)
Collecting Deprecated==1.2.13
Using cached Deprecated-1.2.13-py2.py3-none-any.whl (9.6 kB)
Collecting JPype1==1.3.0
Using cached JPype1-1.3.0.tar.gz (820 kB)
Collecting wrapt<2,>=1.10
Downloading wrapt-1.14.1-cp310-cp310-win_amd64.whl (35 kB)
Using legacy 'setup.py install' for JPype1, since package 'wheel' is not installed.
Installing collected packages: wrapt, JPype1, Deprecated, cogroo4py
Running setup.py install for JPype1 ... error
ERROR: Command errored out with exit status 1:
command: 'C:\Users\felip\Projects\CRIA\venv\Scripts\python.exe' -u -c 'import io, os, sys, setuptools, tokenize; sys.argv[0] = '"'"'C:\Users\felip\AppData\Local\Temp\pip-install-byu_puv5\jpype1_3d9482091cbc42b5b84f9271a76b889b\setup.py'"'"'; file='"'"'C:\Users\felip\AppData\Local\Temp\pip-install-byu_puv5\jpype1_3d9482091cbc42b5b84f9271a76b889b\setup.py'"'"';f = getattr(tokenize,
'"'"'open'"'"', open)(file) if os.path.exists(file) else io.StringIO('"'"'from setuptools import setup; setup()'"'"');code = f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, file, '"'"'exec'"'"'))' install --record 'C:\Users\felip\AppData\Local\Temp\pip-record-y84ts2w5\install-record.txt' --single-version-externally-managed --compile --install-headers 'C:\Users\felip\Projects\CRIA\venv\include\site\python3.10\JPype1'
cwd: C:\Users\felip\AppData\Local\Temp\pip-install-byu_puv5\jpype1_3d9482091cbc42b5b84f9271a76b889b
Complete output (81 lines):
running install
running build
running build_py
creating build
creating build\lib.win-amd64-3.10
creating build\lib.win-amd64-3.10\jpype
copying jpype\beans.py -> build\lib.win-amd64-3.10\jpype
copying jpype\config.py -> build\lib.win-amd64-3.10\jpype
copying jpype\dbapi2.py -> build\lib.win-amd64-3.10\jpype
copying jpype\imports.py -> build\lib.win-amd64-3.10\jpype
copying jpype\nio.py -> build\lib.win-amd64-3.10\jpype
copying jpype\pickle.py -> build\lib.win-amd64-3.10\jpype
copying jpype\protocol.py -> build\lib.win-amd64-3.10\jpype
copying jpype\types.py -> build\lib.win-amd64-3.10\jpype
copying jpype_classpath.py -> build\lib.win-amd64-3.10\jpype
copying jpype_core.py -> build\lib.win-amd64-3.10\jpype
copying jpype_gui.py -> build\lib.win-amd64-3.10\jpype
copying jpype_jarray.py -> build\lib.win-amd64-3.10\jpype
copying jpype_jclass.py -> build\lib.win-amd64-3.10\jpype
copying jpype_jcollection.py -> build\lib.win-amd64-3.10\jpype
copying jpype_jcustomizer.py -> build\lib.win-amd64-3.10\jpype
copying jpype_jexception.py -> build\lib.win-amd64-3.10\jpype
copying jpype_jinit.py -> build\lib.win-amd64-3.10\jpype
copying jpype_jio.py -> build\lib.win-amd64-3.10\jpype
copying jpype_jmethod.py -> build\lib.win-amd64-3.10\jpype
copying jpype_jobject.py -> build\lib.win-amd64-3.10\jpype
copying jpype_jpackage.py -> build\lib.win-amd64-3.10\jpype
copying jpype_jproxy.py -> build\lib.win-amd64-3.10\jpype
copying jpype_jstring.py -> build\lib.win-amd64-3.10\jpype
copying jpype_jthread.py -> build\lib.win-amd64-3.10\jpype
copying jpype_jvmfinder.py -> build\lib.win-amd64-3.10\jpype
copying jpype_pykeywords.py -> build\lib.win-amd64-3.10\jpype
copying jpype_init_.py -> build\lib.win-amd64-3.10\jpype
package init file 'jpype_pyinstaller_init_.py' not found (or not a regular file)
creating build\lib.win-amd64-3.10\jpype_pyinstaller
copying jpype_pyinstaller\entry_points.py -> build\lib.win-amd64-3.10\jpype_pyinstaller
copying jpype_pyinstaller\example.py -> build\lib.win-amd64-3.10\jpype_pyinstaller
copying jpype_pyinstaller\hook-jpype.py -> build\lib.win-amd64-3.10\jpype_pyinstaller
copying jpype_pyinstaller\test_jpype_pyinstaller.py -> build\lib.win-amd64-3.10\jpype_pyinstaller
copying jpype_core.pyi -> build\lib.win-amd64-3.10\jpype
copying jpype_jcollection.pyi -> build\lib.win-amd64-3.10\jpype
copying jpype_jio.pyi -> build\lib.win-amd64-3.10\jpype
copying jpype_jstring.pyi -> build\lib.win-amd64-3.10\jpype
copying jpype_jthread.pyi -> build\lib.win-amd64-3.10\jpype
running build_ext
Call build extensions
Using Jar cache
copying native\jars\org.jpype.jar -> build\lib.win-amd64-3.10
Call build ext
building '_jpype' extension
creating build\temp.win-amd64-3.10
creating build\temp.win-amd64-3.10\Release
creating build\temp.win-amd64-3.10\Release\native
creating build\temp.win-amd64-3.10\Release\native\common
creating build\temp.win-amd64-3.10\Release\native\python
C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\VC\Tools\MSVC\14.16.27023\bin\HostX86\x64\cl.exe /c /nologo /Ox /W3 /GL /DNDEBUG /MD -DWIN32=1 -Inative\common\include -Inative\python\include -Inative\embedded\include -Inative\jni_include -IC:\Users\felip\Projects\CRIA\venv\include -IC:\Python310\include -IC:\Python310\Include -IC:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\VC\Tools\MSVC\14.16.27023\include -IC:\Program Files (x86)\Windows Kits\10\include\10.0.17763.0\ucrt -IC:\Program Files (x86)\Windows Kits\10\include\10.0.17763.0\shared -IC:\Program Files (x86)\Windows Kits\10\include\10.0.17763.0\um -IC:\Program Files (x86)\Windows Kits\10\include\10.0.17763.0\winrt -IC:\Program Files (x86)\Windows Kits\10\include\10.0.17763.0\cppwinrt /EHsc /Tpnative\common\jp_array.cpp /Fobuild\temp.win-amd64-3.10\Release\native\common\jp_array.obj /Zi /EHsc /std:c++14
jp_array.cpp
C:\Users\felip\AppData\Local\Temp\pip-install-byu_puv5\jpype1_3d9482091cbc42b5b84f9271a76b889b\native\python\include\jp_pythontypes.h(284): error C2061: erro de sintaxe: identificador 'ssize_t'
C:\Users\felip\AppData\Local\Temp\pip-install-byu_puv5\jpype1_3d9482091cbc42b5b84f9271a76b889b\native\python\include\jp_pythontypes.h(285): error C2805: 'operator [' bin rio possui poucos parƒmetros
C:\Users\felip\AppData\Local\Temp\pip-install-byu_puv5\jpype1_3d9482091cbc42b5b84f9271a76b889b\native\python\include\jp_pythontypes.h(285): error C2333: 'JPPyObjectVector::operator []': erro na declara‡Æo da fun‡Æo; ignorando corpo da fun‡Æo
c:\users\felip\appdata\local\temp\pip-install-byu_puv5\jpype1_3d9482091cbc42b5b84f9271a76b889b\native\common\include\jp_primitivetype.h(44): error C3646: 'getItemSize': especificador de substitui‡Æo desconhecido
c:\users\felip\appdata\local\temp\pip-install-byu_puv5\jpype1_3d9482091cbc42b5b84f9271a76b889b\native\common\include\jp_primitivetype.h(44): error C2059: erro de sintaxe: ')'
c:\users\felip\appdata\local\temp\pip-install-byu_puv5\jpype1_3d9482091cbc42b5b84f9271a76b889b\native\common\include\jp_primitivetype.h(44): error C2238: token(s) inesperado(s) precedendo ';'
native\common\jp_array.cpp(181): error C2065: 'ssize_t': identificador nÆo declarado
native\common\jp_array.cpp(181): error C2146: erro de sintaxe: ';' ausente antes do identificador 'itemsize'
native\common\jp_array.cpp(181): error C2065: 'itemsize': identificador nÆo declarado
native\common\jp_array.cpp(182): error C2065: 'ssize_t': identificador nÆo declarado
native\common\jp_array.cpp(182): error C2146: erro de sintaxe: ';' ausente antes do identificador 'sz'
native\common\jp_array.cpp(182): error C2065: 'sz': identificador nÆo declarado
native\common\jp_array.cpp(188): error C2065: 'itemsize': identificador nÆo declarado
native\common\jp_array.cpp(188): error C2039: 'getItemSize': nÆo ‚ um membro de 'JPPrimitiveType'
c:\users\felip\appdata\local\temp\pip-install-byu_puv5\jpype1_3d9482091cbc42b5b84f9271a76b889b\native\common\include\jp_primitivetype.h(20): note: consulte a declara‡Æo de 'JPPrimitiveType'
native\common\jp_array.cpp(189): error C2065: 'sz': identificador nÆo declarado
native\common\jp_array.cpp(189): error C2065: 'itemsize': identificador nÆo declarado
native\common\jp_array.cpp(193): error C2065: 'sz': identificador nÆo declarado
native\common\jp_array.cpp(197): error C2065: 'itemsize': identificador nÆo declarado
native\common\jp_array.cpp(206): error C2065: 'sz': identificador nÆo declarado
native\common\jp_array.cpp(216): error C2065: 'itemsize': identificador nÆo declarado
native\common\jp_array.cpp(224): error C2065: 'itemsize': identificador nÆo declarado
native\common\jp_array.cpp(227): error C2065: 'sz': identificador nÆo declarado
error: command 'C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\VC\Tools\MSVC\14.16.27023\bin\HostX86\x64\cl.exe' failed with exit code 2
----------------------------------------
ERROR: Command errored out with exit status 1: 'C:\Users\felip\Projects\CRIA\venv\Scripts\python.exe' -u -c 'import io, os, sys, setuptools, tokenize; sys.argv[0] = '"'"'C:\Users\felip\AppData\Local\Temp\pip-install-byu_puv5\jpype1_3d9482091cbc42b5b84f9271a76b889b\setup.py'"'"'; file='"'"'C:\Users\felip\AppData\Local\Temp\pip-install-byu_puv5\jpype1_3d9482091cbc42b5b84f9271a76b889b\setup.py'"'"';f = getattr(tokenize, '"'"'open'"'"', open)(file) if os.path.exists(file) else io.StringIO('"'"'from setuptools import setup; setup()'"'"');code = f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, file, '"'"'exec'"'"'))' install --record 'C:\Users\felip\AppData\Local\Temp\pip-record-y84ts2w5\install-record.txt' --single-version-externally-managed --compile
--install-headers 'C:\Users\felip\Projects\CRIA\venv\include\site\python3.10\JPype1' Check the logs for full command output.
"
Informações Operacionais:
Python 3.10
Executando procedimento em Ambiente Virtual Python a partir de python -m venv venv
Processador AMD FX(tm)-6300 Six-Core Processor 3.50 GHz
RAM instalada 16,0 GB
Tipo de sistema Windows 10 de 64 bits, processador baseado em x64
Grato desde já.
Hi everyone,
In Ubuntu 18.4 LTS when I execute the command: java -jar cogroo4py.jar
The system returns
Exception in thread "main" java.lang.NoClassDefFoundError: org/cogroo/text/Document
at java.base/java.lang.Class.forName0(Native Method)
at java.base/java.lang.Class.forName(Class.java:374)
at org.eclipse.jdt.internal.jarinjarloader.JarRsrcLoader.main(JarRsrcLoader.java:56)
Caused by: java.lang.ClassNotFoundException: org.cogroo.text.Document
at java.base/java.net.URLClassLoader.findClass(URLClassLoader.java:466)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:566)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:499)
... 3 more
Somebody can help me?
Estou tentanto usar o análisador gramátical mas estou tento alguns problemas.
Ao tentar obter os erros a partir do código abaixo, nada é retornado.
from cogroo_interface import Cogroo
cogroo = Cogroo.Instance()
doc = cogroo.grammar_check('Elas são bonita.')
doc.mistakes
A análise morfossintática está funcionando.
Fiz o build do servidor java novamente mas não resolveu problema.
Estou usando java/javac 14.0.1 e python 3.6.9
No servidor java não tem nenhum erro, além do Illegal reflective access reportado no projeto.
Estou fazendo algo errado?
Não sei exatamente se é uma causa específica do cogroo4py ou se aplica-se à todo Cogroo.
Segue o código mostrando o erro:
CODE1 :
from cogroo4py.cogroo import Cogroo
entrada = "Refiro-me à trabalho remunerado."
cogroo = Cogroo()
docVar = cogroo.grammar_check(entrada)
misVar = docVar.mistakes
for mistake in misVar:
print( {"errorMsg":mistake.short_msg,
"rule":mistake.rule_id,
"start":mistake.start,
"end":mistake.end})
print(f' Erro literal: "{entrada[mistake.start:mistake.end]}"')
OUTPUT1:
{'errorMsg': 'Não ocorre crase antes de palavras masculinas.', 'rule': 'xml:1', 'start': 10, 'end': 11}
Erro literal: "à"
CODE2:
from cogroo4py.cogroo import Cogroo
entrada = """Aqui tem uma coisa antes.Refiro-me à trabalho remunerado. Aqui tem outra cosia depois, estamos escrevendo mais."""
cogroo = Cogroo()
docVar = cogroo.grammar_check(entrada)
misVar = docVar.mistakes
for mistake in misVar:
print( {"errorMsg":mistake.short_msg,
"rule":mistake.rule_id,
"start":mistake.start,
"end":mistake.end})
print(f' Erro literal: "{entrada[mistake.start:mistake.end]}"')
OUTPUT2:
{'errorMsg': 'Não ocorre crase antes de palavras masculinas.', 'rule': 'xml:1', 'start': 36, 'end': 37}
Erro literal: " "
Como observado, aparentemente existe um erro nos atributos .start e .end presentes no cogroo4py quando a frase inserida é maior. Usando apenas a sessão de erro, o retorno é correto. Então pode ser que seja pela presenção ou não do '.' antes de 'Refiro-me'. Fiz ainda o último teste:
CODE3:
from cogroo4py.cogroo import Cogroo
entrada = """Aqui tem uma coisa antes. Refiro-me à trabalho remunerado. Aqui tem outra cosia depois, estamos escrevendo mais."""
cogroo = Cogroo()
docVar = cogroo.grammar_check(entrada)
misVar = docVar.mistakes
for mistake in misVar:
print( {"errorMsg":mistake.short_msg,
"rule":mistake.rule_id,
"start":mistake.start,
"end":mistake.end})
print(f' Erro literal: "{entrada[mistake.start:mistake.end]}"')
OUPUT3:
{'errorMsg': 'Não ocorre crase antes de palavras masculinas.', 'rule': 'xml:1', 'start': 36, 'end': 37}
Erro literal: "à"
Informações de reprodutibilidade:
Códigos executados no Jupyter Notebook do VScode.
OS Win 10 Home
Python 3.10
Execução ocorre em Ambiente Virtual Python
For make life easy to anyone trying to deploy an application with cogroo4py.
IIS websites don't recognize the environment variable JAVA_HOME defined outside of app.settings, in web.config file inside your application folder.
For correct definition of this variable in IIS context, follow these steps:
1 - Open Windows prompt as Administrator and type : echo %JAVA_HOME%
, than copy output path.
2 - Inside your application folder, open web.config file with text editor.
3 - Find the pattern:
<app.settings>
...
</app.settings>
3 - Inside, define:
<add key="JAVA_HOME" value="OUTPUT_OF_ECHO_%JAVA_HOME%" />
4 - Save the file, restart your application and it shoud be running
I hope this make your deploy easiest then mine.
Best Regards
Hi, after few hours the server does not respond (maybe it's on loop) when i try to lemmatize. I've tested the last input after restarting the server and it works fine so t's not a problem related to the input I'm using python 3.6, open-jdk-8.
Also, the number of the server child processes have increased since the beginning:
https://imgur.com/a/IityAyR
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.