The Python interface to the Stanford Named Entity Recognizer Server.
Project description
# sner
Python wrapper around the Stanford Named Entity Recognizer (NER) Server and the Part-Of-Speech (POS) Tagger Server.
[](https://badge.fury.io/py/sner)
[](https://raw.githubusercontent.com/caihaoyu/sner/master/LICENSE)
# Stanford Named Entity Recognizer Project
* [Home Page](https://nlp.stanford.edu/software/CRF-NER.shtml)
* [Running NER as a Server](https://nlp.stanford.edu/software/crf-faq.shtml#cc)
# Stanford Part-Of-Speech Tagger Project
* [Home Page](https://nlp.stanford.edu/software/tagger.shtml)
* [Running POS as a Server](https://nlp.stanford.edu/software/pos-tagger-faq.html#e)
# Installation
```bash
pip install sner
```
or
```bash
python setup install
```
# Start
## NER Client
Run the following commands to start the NER server
```bash
cd your_stanford_ner_dir
java -Djava.ext.dirs=./lib -cp stanford-ner.jar edu.stanford.nlp.ie.NERServer -port 9199 -loadClassifier ./classifiers/english.all.3class.distsim.crf.ser.gz -tokenizerFactory edu.stanford.nlp.process.WhitespaceTokenizer -tokenizerOptions tokenizeNLs=false
```
Use the following in Python to access the NER server
```python
from sner import Ner
test_string = "Alice went to the Museum of Natural History."
tagger = Ner(host='localhost',port=9199)
print(tagger.get_entities(test_string))
```
The following results are expected
```python
[('Alice', 'PERSON'),
('went', 'O'),
('to', 'O'),
('the', 'O'),
('Museum', 'ORGANIZATION'),
('of', 'ORGANIZATION'),
('Natural', 'ORGANIZATION'),
('History', 'ORGANIZATION'),
('.', 'O')]
```
## POS Client
Run the following commands to start the POS server
```bash
cd your_stanford_pos_dir
java -cp stanford-postagger.jar edu.stanford.nlp.tagger.maxent.MaxentTaggerServer -port 9198 -model models/english-bidirectional-distsim.tagger
```
Use the following in Python to access the POS server
```python
from sner import POSClient
test_string = "Alice went to the Museum of Natural History."
tagger = POSClient(host='localhost', port=9198)
print(tagger.tag(test_string))
```
The following results are expected
```python
[('Alice', 'NNP'),
('went', 'VBD'),
('to', 'TO'),
('the', 'DT'),
('Museum', 'NNP'),
('of', 'IN'),
('Natural', 'NNP'),
('History', 'NN'),
('.', '.')]
```
Python wrapper around the Stanford Named Entity Recognizer (NER) Server and the Part-Of-Speech (POS) Tagger Server.
[](https://badge.fury.io/py/sner)
[](https://raw.githubusercontent.com/caihaoyu/sner/master/LICENSE)
# Stanford Named Entity Recognizer Project
* [Home Page](https://nlp.stanford.edu/software/CRF-NER.shtml)
* [Running NER as a Server](https://nlp.stanford.edu/software/crf-faq.shtml#cc)
# Stanford Part-Of-Speech Tagger Project
* [Home Page](https://nlp.stanford.edu/software/tagger.shtml)
* [Running POS as a Server](https://nlp.stanford.edu/software/pos-tagger-faq.html#e)
# Installation
```bash
pip install sner
```
or
```bash
python setup install
```
# Start
## NER Client
Run the following commands to start the NER server
```bash
cd your_stanford_ner_dir
java -Djava.ext.dirs=./lib -cp stanford-ner.jar edu.stanford.nlp.ie.NERServer -port 9199 -loadClassifier ./classifiers/english.all.3class.distsim.crf.ser.gz -tokenizerFactory edu.stanford.nlp.process.WhitespaceTokenizer -tokenizerOptions tokenizeNLs=false
```
Use the following in Python to access the NER server
```python
from sner import Ner
test_string = "Alice went to the Museum of Natural History."
tagger = Ner(host='localhost',port=9199)
print(tagger.get_entities(test_string))
```
The following results are expected
```python
[('Alice', 'PERSON'),
('went', 'O'),
('to', 'O'),
('the', 'O'),
('Museum', 'ORGANIZATION'),
('of', 'ORGANIZATION'),
('Natural', 'ORGANIZATION'),
('History', 'ORGANIZATION'),
('.', 'O')]
```
## POS Client
Run the following commands to start the POS server
```bash
cd your_stanford_pos_dir
java -cp stanford-postagger.jar edu.stanford.nlp.tagger.maxent.MaxentTaggerServer -port 9198 -model models/english-bidirectional-distsim.tagger
```
Use the following in Python to access the POS server
```python
from sner import POSClient
test_string = "Alice went to the Museum of Natural History."
tagger = POSClient(host='localhost', port=9198)
print(tagger.tag(test_string))
```
The following results are expected
```python
[('Alice', 'NNP'),
('went', 'VBD'),
('to', 'TO'),
('the', 'DT'),
('Museum', 'NNP'),
('of', 'IN'),
('Natural', 'NNP'),
('History', 'NN'),
('.', '.')]
```
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
sner-0.2.12.tar.gz
(3.1 kB
view details)
File details
Details for the file sner-0.2.12.tar.gz.
File metadata
- Download URL: sner-0.2.12.tar.gz
- Upload date:
- Size: 3.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e349cddd1bc26d89e69d8e7e9be7d35a6cf194094948576d39236bbf906f5134
|
|
| MD5 |
801cdb33fd644753bdb5bc245084f9b6
|
|
| BLAKE2b-256 |
dd122532ca59b722b1573dd9015e831bc553524d9292199b131ea2b730911288
|