{"id":23787,"library":"geotext","title":"geotext","description":"Geotext extracts country and city mentions from text using a simple word-matching approach (not ML). Current version 0.4.0, last updated 2018, project effectively in maintenance mode. Does not support Python 3.6+ out of the box.","status":"maintenance","version":"0.4.0","language":"python","source_language":"en","source_url":"https://github.com/elyase/geotext","tags":["geotext","cities","countries","geocoding","text-extraction"],"install":[{"cmd":"pip install geotext","lang":"bash","label":"PyPI default"},{"cmd":"pip install git+https://github.com/elyase/geotext.git","lang":"bash","label":"Latest from GitHub"}],"dependencies":[],"imports":[{"note":"Module does not expose GeoText at top-level. Must use from-import.","wrong":"import geotext","symbol":"GeoText","correct":"from geotext import GeoText"}],"quickstart":{"code":"from geotext import GeoText\n\nplaces = GeoText(\"I live in Paris and work in Berlin\")\nprint(places.cities)  # ['Paris', 'Berlin']\nprint(places.countries)  # []\n","lang":"python","description":"Extract city and country mentions from text."},"warnings":[{"fix":"Consider alternatives: geonamescache, countryinfo, or spacy geo components.","message":"Project unmaintained since 2018, no Python 3.6+ compatibility fixes. Use Python 2.7 or backport yourself.","severity":"deprecated","affected_versions":"0.4.0 only"},{"fix":"Normalize input text to lowercase before passing to GeoText if needed.","message":"GeoText does lowercase matching by default, so 'PARIS' or 'Paris' work, but mixed case may cause misses.","severity":"gotcha","affected_versions":"all"}],"env_vars":null,"search_vec":"'0.4.0':21 '2018':24 '3.6':34 'approach':16 'box':38 'citi':6,40 'countri':4,41 'current':19 'effect':26 'extract':3,45 'geocod':42 'geotext':1,2,39 'last':22 'mainten':28 'match':15 'mention':7 'ml':18 'mode':29 'project':25 'python':33 'simpl':12 'support':32 'text':9,44 'text-extract':43 'updat':23 'use':10 'version':20 'word':14 'word-match':13","created_at":"2026-05-01T08:09:37.617332+00:00","updated_at":"2026-05-01T08:09:37.617332+00:00","problems":[{"fix":"Use: from geotext import GeoText","cause":"Wrong import: import geotext instead of from geotext import GeoText","error":"ModuleNotFoundError: No module named 'geotext'"},{"fix":"Install enum34: pip install enum34, or switch to Python 3.4+.","cause":"Python 2.7 environment missing enum backport. geotext uses enum.","error":"ImportError: No module named enum"}],"ecosystem":"pypi","meta_description":null,"install_score":null,"quickstart_score":null,"quickstart_tag":null,"pypi_latest":"0.4.0","cli_name":"","cli_version":null,"type":"library","homepage":null,"github":"https://github.com/elyase/geotext","docs":null,"changelog":null,"pypi":"https://pypi.org/project/geotext/","npm":null,"openapi_spec":null,"status_page":null,"smithery":null,"categories":["data","ai-ml"],"base_url":null,"auth_type":null,"provenance":{"verified_status":"passing","verified_at":"2026-06-29","last_verified":"2026-06-29","next_check":"2026-07-29","install_tag":null}}