项目作者: AnthonySigogne

项目描述 :
API to extract entities from a text (Company, Place,...).
高级语言: Python
项目地址: git://github.com/AnthonySigogne/entity-extraction.git
创建时间: 2017-06-25T21:03:08Z
项目社区:https://github.com/AnthonySigogne/entity-extraction

开源协议:MIT License

下载


entity-extraction

API to extract entities from a text.

The goal is to identify the most important “concepts” of a text : companies, brands, people, places…
Each concept, or entity, is associated with additional data like the link to the Wikipedia page, an abstract or a photo.

This API uses the library DBPedia Spotlight : https://github.com/dbpedia-spotlight/dbpedia-spotlight.

INSTALL

  1. pip install -r requirements.txt
  2. FLASK_APP=index.py flask run

To launch in debug mode :

  1. FLASK_APP=index.py FLASK_DEBUG=1 flask run

To list all services of API, type this endpoint in your web browser : “http://localhost:5000/“.

USAGE AND EXAMPLE

The example below shows how to extract entities from an English text with cURL :

  1. curl http://localhost:5000/entities --data-urlencode "text=Ennio Morricone, né le 10 novembre 1928 à Rome (Italie), est un compositeur, producteur et chef d'orchestre italien." --data "language=fr"

The result is a list of entities in a JSON dictionary :

  1. {
  2. "entities": [
  3. {
  4. "abstract": "Ennio Morricone (n\u00e9 le 10 novembre 1928 \u00e0 Rome) est un compositeur et chef d'orchestre italien, r\u00e9put\u00e9 notamment pour ses musiques de films, en partic...",
  5. "dbtype": "Person",
  6. "label": "Ennio Morricone",
  7. "photo": "http://commons.wikimedia.org/wiki/Special:FilePath/Ennio_Morricone_Cannes_2012.jpg?width=50",
  8. "uri": "http://fr.dbpedia.org/resource/Ennio_Morricone",
  9. "wiki": "http://fr.wikipedia.org/wiki/Ennio_Morricone?oldid=110641314"
  10. },
  11. {
  12. "abstract": "Le 10 novembre est le 314e jour de l'ann\u00e9e du calendrier gr\u00e9gorien, le 315e en cas d'ann\u00e9e bissextile. Il reste 51 jours avant la fin de l'ann\u00e9e.C'\u00e9t...",
  13. "dbtype": "Entity",
  14. "label": "10 novembre",
  15. "photo": null,
  16. "uri": "http://fr.dbpedia.org/resource/10_novembre",
  17. "wiki": "http://fr.wikipedia.org/wiki/10_novembre?oldid=111009910"
  18. },
  19. {
  20. "abstract": "Rome (en italien Roma, prononc\u00e9 [\u02c8ro\u02d1ma\u2006]) est la capitale de l'Italie depuis 1871. Situ\u00e9e au centre-ouest de la p\u00e9ninsule italienne, sur les c\u00f4tes de...",
  21. "dbtype": "Place",
  22. "label": "Rome",
  23. "photo": "http://commons.wikimedia.org/wiki/Special:FilePath/Collage_Rome.jpg?width=50",
  24. "uri": "http://fr.dbpedia.org/resource/Rome",
  25. "wiki": "http://fr.wikipedia.org/wiki/Rome?oldid=110475933"
  26. },
  27. {
  28. "abstract": null,
  29. "dbtype": "Place",
  30. "label": "Italie",
  31. "photo": "http://commons.wikimedia.org/wiki/Special:FilePath/Flag_of_Italy.svg?width=50",
  32. "uri": "http://fr.dbpedia.org/resource/Italie",
  33. "wiki": "http://fr.wikipedia.org/wiki/Italie?oldid=111025098"
  34. },
  35. {
  36. "abstract": "Un compositeur de musique (couramment d\u00e9nomm\u00e9 compositeur) (du latin compositum, supin signifiant \u00ab pour composer \u00bb du verbe componere) est un musicie...",
  37. "dbtype": "Entity",
  38. "label": "Compositeur",
  39. "photo": "http://commons.wikimedia.org/wiki/Special:FilePath/Louis-Nicolas_Clerambault.jpg?width=50",
  40. "uri": "http://fr.dbpedia.org/resource/Compositeur",
  41. "wiki": "http://fr.wikipedia.org/wiki/Compositeur?oldid=107179123"
  42. },
  43. {
  44. "abstract": "Un chef d'orchestre est un musicien charg\u00e9 de coordonner le jeu des instrumentistes des orchestres symphoniques, de jazz, d'harmonie ou de fanfare. Sa...",
  45. "dbtype": "Entity",
  46. "label": "Chef d'orchestre",
  47. "photo": "http://commons.wikimedia.org/wiki/Special:FilePath/Charles_Lamoureux.png?width=50",
  48. "uri": "http://fr.dbpedia.org/resource/Chef_d'orchestre",
  49. "wiki": "http://fr.wikipedia.org/wiki/Chef_d'orchestre?oldid=109128433"
  50. }
  51. ]
  52. }

NOTE

This API works with Python2 and Python3.

DOCKER

To build this API for Docker :

  1. docker build -t <name> .

To run the Docker container :

  1. docker run -p <port>:5000 <name>