diff --git a/pipenv/cli.py b/pipenv/cli.py index 02352754..09b24cc0 100644 --- a/pipenv/cli.py +++ b/pipenv/cli.py @@ -415,6 +415,8 @@ def proper_case(package_name): # Hit the simple API. r = requests.get('{0}/{1}'.format(project.source['url'], package_name)) + if not r.ok: + raise IOError('Unable to find package {0} in PyPI repository.'.format(crayons.green(package_name))) # Parse the HTML. parser = SimpleHTMLParser() @@ -528,7 +530,11 @@ def install(package_name=False, more_packages=False, dev=False, three=False, sys # Proper-case incoming package name (check against API). old_name = [k for k in convert_deps_from_pip(package_name).keys()][0] - new_name = proper_case(old_name) + try: + new_name = proper_case(old_name) + except IOError as e: + click.echo('{0} {1}'.format(crayons.red('Error: '), e.args[0], crayons.green(package_name))) + continue package_name = package_name.replace(old_name, new_name) click.echo('Installing {0}...'.format(crayons.green(package_name)))