2     Implementation of the 'special-phrases' command.
 
   5 from nominatim.tools import SpecialPhrasesImporter
 
   6 from nominatim.db.connection import connect
 
   8 LOG = logging.getLogger()
 
  10 # Do not repeat documentation of subcommand classes.
 
  11 # pylint: disable=C0111
 
  12 # Using non-top-level imports to avoid eventually unused imports.
 
  13 # pylint: disable=E0012,C0415
 
  15 class ImportSpecialPhrases:
 
  17     Import special phrases.
 
  21         group = parser.add_argument_group('Input arguments')
 
  22         group.add_argument('--import-from-wiki', action='store_true',
 
  23                            help='Import special phrases from the OSM wiki to the database.')
 
  27         from ..tokenizer import factory as tokenizer_factory
 
  29         if args.import_from_wiki:
 
  30             LOG.warning('Special phrases importation starting')
 
  31             tokenizer = tokenizer_factory.get_tokenizer_for_db(args.config)
 
  32             with connect(args.config.get_libpq_dsn()) as db_connection:
 
  33                 SpecialPhrasesImporter(
 
  34                     args.config, args.phplib_dir, db_connection
 
  35                 ).import_from_wiki(tokenizer)