2017-02-13 5 views
1

Я не уверен, что это связано с тем, что я работаю в своей компании, и есть прокси, я не могу установить переменную окружения. Таким образом, я не могу использовать pip install в CMD. Я пытаюсь загрузить пакет, на свой локальный компьютер и установить его с помощью метода от Installing python module within code. Но я потерпел неудачу. Вот мой код:Как установить локальный пакет с помощью pip в консоли python

import pip 
pip.main(['install','h://feng.officeworks/mixed/myPython/numpy-1.12.0']) 

Это не работает для меня, у меня есть следующая информация:

Invalid requirement: 'h://feng.officeworks/mixed/myPython/numpy' 
Traceback (most recent call last): 
    File "C:\Users\fchen4\AppData\Local\Programs\Python\Python36-32\lib\site-packages\pip\_vendor\packaging\requirements.py", line 92, in __init__ 
    req = REQUIREMENT.parseString(requirement_string) 
    File "C:\Users\fchen4\AppData\Local\Programs\Python\Python36-32\lib\site-packages\pip\_vendor\pyparsing.py", line 1617, in parseString 
    raise exc 
    File "C:\Users\fchen4\AppData\Local\Programs\Python\Python36-32\lib\site-packages\pip\_vendor\pyparsing.py", line 1607, in parseString 
    loc, tokens = self._parse(instring, 0) 
    File "C:\Users\fchen4\AppData\Local\Programs\Python\Python36-32\lib\site-packages\pip\_vendor\pyparsing.py", line 1379, in _parseNoCache 
    loc,tokens = self.parseImpl(instring, preloc, doActions) 
    File "C:\Users\fchen4\AppData\Local\Programs\Python\Python36-32\lib\site-packages\pip\_vendor\pyparsing.py", line 3376, in parseImpl 
    loc, exprtokens = e._parse(instring, loc, doActions) 
    File "C:\Users\fchen4\AppData\Local\Programs\Python\Python36-32\lib\site-packages\pip\_vendor\pyparsing.py", line 1383, in _parseNoCache 
    loc,tokens = self.parseImpl(instring, preloc, doActions) 
    File "C:\Users\fchen4\AppData\Local\Programs\Python\Python36-32\lib\site-packages\pip\_vendor\pyparsing.py", line 3164, in parseImpl 
    raise ParseException(instring, loc, self.errmsg, self) 
pip._vendor.pyparsing.ParseException: Expected stringEnd (at char 1), (line:1, col:2) 
During handling of the above exception, another exception occurred: 
Traceback (most recent call last): 
    File "C:\Users\fchen4\AppData\Local\Programs\Python\Python36-32\lib\site-packages\pip\req\req_install.py", line 82, in __init__ 
    req = Requirement(req) 
    File "C:\Users\fchen4\AppData\Local\Programs\Python\Python36-32\lib\site-packages\pip\_vendor\packaging\requirements.py", line 96, in __init__ 
requirement_string[e.loc:e.loc + 8])) 
pip._vendor.packaging.requirements.InvalidRequirement: Invalid requirement, parse error at "'://feng.'" 
1 

Я использую Windows 10, Python 3.6.0, PyCharm 2016.3.2. pip уже установлен с Python

Кроме того, поскольку у меня нет доступа к переменной окружения, я не могу установить путь к Python. Поэтому я не могу использовать заказы, такие как python или pip в оконном терминале. Поэтому мне нужно использовать функцию в консоли python.

Большое спасибо за ответы. Я также попытался пойти в C: \ Users \ fchen4 \ AppData \ Local \ Programs \ Python \ Python36-32 \ Scripts, а затем использовать

pip install h://mypath/numpy. 

Я уже распаковывать NumPy здесь. Это не работает. Информация, представленная в PowerShell, как:

Obtaining file:///H:/feng.officeworks/mixed/myPython/numpy 
Installing collected packages: numpy 
    Running setup.py develop for numpy 
    Complete output from command c:\users\fchen4\appdata\local\programs\python\python36-32\python.exe -c "import setuptools, tokenize;__file__='H:\\feng.officeworks\\mixed\\m 
yPython\\numpy\\setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" develop --no-deps: 
    blas_opt_info: 
    blas_mkl_info: 
     libraries mkl_rt not found in ['c:\\users\\fchen4\\appdata\\local\\programs\\python\\python36-32\\lib', 'C:\\', 'c:\\users\\fchen4\\appdata\\local\\programs\\python\\py 
thon36-32\\libs'] 
     NOT AVAILABLE 

    .... (There are too much here so I ignore it.) 
    .... 
Command "c:\users\fchen4\appdata\local\programs\python\python36-32\python.exe -c "import setuptools, tokenize;__file__='H:\\feng.officeworks\\mixed\\myPython\\numpy\\setup.py 
';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" develop --no-deps" failed with error code 1 
in H:\feng.officeworks\mixed\myPython\numpy\ 

Любой может сказать мне, пожалуйста, как установить локальный пакет с помощью пип или что-нибудь еще в питона консоли?


+0

«Но я потерпел неудачу» -> Скопируйте-скопируйте ошибки, которые у вас есть, иначе вам сложно понять ваш провал. Кроме того, для справки, может быть полезной версия Python и pip. –

ответ

0

Установить конкретный исходный архив файла:

pip install ./downloads/SomePackage-1.0.4.tar.gz

Также вы можете загрузить дистрибутив исходного кода модуля и установить его, распаковать архив в одноименной директории: foo-1.0. Кроме того, распределение будет содержать сценарий установки setup.py, а затем запустить эту команду из терминала:

python setup.py install 

Если вы хотите установить пакет в коде, попробуйте следующее:

import os 
os.system("pip2.7 install foo") 

Или

import subprocess 
subprocess.call(['pip', 'install', foo]) 

Надеюсь, это поможет.

+0

Большое спасибо за ваш ответ. Но все равно не работает. Я пробовал: subprocess.call (['pip', 'install', 'numpy']). Похоже, что все еще пытается получить библиотеку из Интернета. Информация такова: сбор numpy Повторная попытка (всего = 4, connect = None, read = None, redirect = None)) после того, как соединение сломано «ConnectTimeoutError» (, 'время соединения с pypi.python.org. (Connect timeout = 15)') ':/simple/numpy/ –

+0

Кроме того, я не могу использовать такой порядок, как pip install ./downloads/SomePackage-1.0 .4.tar.gz, потому что я не могу использовать команду python в оконном терминале –

+0

@FengChen «Соединение с pypi.python.org приурочено к изменению [pypi mirror] (https://www.pypi-mirrors.org/) возможно помогает.Также вы можете запустить 'cd C: \ Users \ fchen4 \ AppData \ Local \ Programs \ Python \ Python36-32 \ Scripts', а затем использовать' pip' для установки. – McGrady

Смежные вопросы