Unable to use Stanford NER in python module
Question: I want to use Python Stanford NER module but keep getting an error,I searched
it on internet but got nothing. Here is the basic usage with error.

    
    
    import ner
    tagger = ner.HttpNER(host='localhost', port=8080)
    tagger.get_entities("University of California is located in California,   
    
    United States")
    

Error

    
    
    Traceback (most recent call last):
    File "<pyshell#3>", line 1, in <module>
    tagger.get_entities("University of California is located in California, United States")
    File "C:\Python27\lib\site-packages\ner\client.py", line 81, in get_entities
    tagged_text = self.tag_text(text)
    File "C:\Python27\lib\site-packages\ner\client.py", line 165, in tag_text
    c.request('POST', self.location, params, headers)
    File "C:\Python27\lib\httplib.py", line 1057, in request
    self._send_request(method, url, body, headers)
    File "C:\Python27\lib\httplib.py", line 1097, in _send_request
    self.endheaders(body)
    File "C:\Python27\lib\httplib.py", line 1053, in endheaders
    self._send_output(message_body)
    File "C:\Python27\lib\httplib.py", line 897, in _send_output
    self.send(msg)
    File "C:\Python27\lib\httplib.py", line 859, in send
    self.connect()
    File "C:\Python27\lib\httplib.py", line 836, in connect
    self.timeout, self.source_address)
    File "C:\Python27\lib\socket.py", line 575, in create_connection
    raise err
    error: [Errno 10061] No connection could be made because the target machine actively refused it
    

Using windows 10 with latest Java installed


Answer:   * The Python Stanford NER module is a wrapper for the Stanford NER that allows you to run python commands to use the NER service. 
  * The NER service is a separate entity to the Python module. It is a Java program. To access this service, via python, or any other way, you first need to start the service. 
  * Details on how to start the Java Program/service can be found here - <http://nlp.stanford.edu/software/CRF-NER.shtml>
  * The NER comes with a `.bat` file for windows and a `.sh` file for unix/linux. I think these files start the `GUI`

  * To start the service without the `GUI` you should run a command similar to this:  
`java -mx600m -cp stanford-ner.jar edu.stanford.nlp.ie.crf.CRFClassifier
-loadClassifier classifiers/english.all.3class.distsim.crf.ser.gz`  
This runs the NER jar, sets the memory, and sets the classifier you want to
use. (I think youll have to be in the Stanford NER directory to run this)

  * Once the NER program is running then you will be able to run your python code and query the NER. 

