Stanford CoreNLP provides a set of natural language analysis tools. It can give the base forms of words, their parts of speech, whether they are names of companies, people, etc., normalize dates, times, and numeric quantities, and mark up the structure of sentences in terms of phrases and word dependencies, indicate which noun phrases refer to the same entities, indicate sentiment, extract open-class relations between mentions, etc.
M. Peters, M. Neumann, R. Logan, R. Schwartz, V. Joshi, S. Singh, and N. Smith. Proceedings of the 2019 Conference on Empirical Methods in Natural Language Processing and the 9th International Joint Conference on Natural Language Processing (EMNLP-IJCNLP), page 43--54. Hong Kong, China, Association for Computational Linguistics, (November 2019)
C. Scheible, R. Klinger, and S. Padó. Proceedings of the 54th Annual Meeting of the Association for Computational Linguistics (Volume 1: Long Papers), page 1736--1745. Berlin, Germany, Association for Computational Linguistics, (August 2016)
G. Muzny, M. Fang, A. Chang, and D. Jurafsky. Proceedings of the 15th Conference of the European Chapter of the Association for Computational Linguistics: Volume 1, Long Papers, page 460--470. Valencia, Spain, Association for Computational Linguistics, (April 2017)
R. Snow, B. O'Connor, D. Jurafsky, and A. Ng. Proceedings of the 2008 Conference on Empirical Methods in Natural Language Processing, page 254--263. Honolulu, Hawaii, Association for Computational Linguistics, (October 2008)