2017-07-31 78 views
0

我试图使用grammar-check 1.3.1库为PythonPython 2.7版 - 语法检查1.3.1库:HTTP错误400:错误的请求

我已经使用了PIP安装它的命令

$ pip install --upgrade 3to2 

$ pip install --upgrade language-check 

我也是从这个link解压LanguageTool文件,并将其转移到C:\Users\me\AppData\Roaming\Python\Python27\site-packages\grammar_check

然后我试图运行一个测试程序

import grammar_check 
tool = grammar_check.LanguageTool('en-GB') 
text = 'This are bad.' 
matches = tool.check(text) 
len(matches) 

但我得到这个错误:

Traceback (most recent call last): 
    File "grammar-checker-test.py", line 2, in <module> 
    tool = grammar_check.LanguageTool('en-GB') 
    File "C:\Users\me\AppData\Roaming\Python\Python27\site-packages\grammar_check\__init__.py", line 196, in __init__ 
    self._language = LanguageTag(language) 
    File "C:\Users\me\AppData\Roaming\Python\Python27\site-packages\grammar_check\__init__.py", line 405, in __new__ 
    return unicode.__new__(cls, cls._normalize(tag)) 
    File "C:\Users\me\AppData\Roaming\Python\Python27\site-packages\grammar_check\__init__.py", line 426, in _normalize 
    for language in get_languages()) 
    File "C:\Users\me\AppData\Roaming\Python\Python27\site-packages\grammar_check\__init__.py", line 485, in get_languages 
    languages = LanguageTool._get_languages() 
    File "C:\Users\me\AppData\Roaming\Python\Python27\site-packages\grammar_check\__init__.py", line 286, in _get_languages 
    for e in cls._get_root(url, num_tries=1): 
    File "C:\Users\me\AppData\Roaming\Python\Python27\site-packages\grammar_check\__init__.py", line 311, in _get_root 
    raise Error(u'{}: {}'.format(cls._url, e)) 
grammar_check.Error: http://127.0.0.1:8081: HTTP Error 400: Bad Request 

我怎样才能解决这个问题?

回答

0

问题是我没有运行LanguageTool服务器。

为了做到这一点,我必须检查我的语法工具文件夹(它的版本必须是< 3.3,在我的情况下它是2.2),在我的grammar_check文件夹中。

然后使用CMD壳我已经进入这个LanguageTool文件夹,这在我的情况下,位于此路径:

C:\Users\me\AppData\Roaming\Python\Python27\site-packages\grammar_check\LanguageTool-2.2 

比,我必须用这个命令

java -cp languagetool-server.jar org.languagetool.server.HTTPServer --port 8081 
运行服务器

andvoilàgrammar_check is working well