spaCy/spacy/download.py

39 lines
1.3 KiB
Python
Raw Normal View History

from __future__ import print_function
import sys
import sputnik
from sputnik.package_list import (PackageNotFoundException,
CompatiblePackageNotFoundException)
from . import about
2016-10-23 20:46:44 +03:00
from . import util
def download(lang, force=False, fail_on_exist=True):
try:
pkg = sputnik.package(about.__title__, about.__version__,
2016-10-19 01:47:44 +03:00
about.__models__.get(lang, lang))
if force:
shutil.rmtree(pkg.path)
elif fail_on_exist:
print("Model already installed. Please run 'python -m "
"spacy.%s.download --force' to reinstall." % lang, file=sys.stderr)
sys.exit(0)
except (PackageNotFoundException, CompatiblePackageNotFoundException):
pass
2016-10-19 01:47:44 +03:00
package = sputnik.install(about.__title__, about.__version__,
about.__models__.get(lang, lang))
try:
2016-10-19 01:47:44 +03:00
sputnik.package(about.__title__, about.__version__,
about.__models__.get(lang, lang))
except (PackageNotFoundException, CompatiblePackageNotFoundException):
print("Model failed to install. Please run 'python -m "
"spacy.%s.download --force'." % lang, file=sys.stderr)
sys.exit(1)
2016-10-23 20:46:44 +03:00
data_path = util.get_data_path()
print("Model successfully installed to %s" % data_path, file=sys.stderr)