首先我的python版本是2.7.6,没有默认安装pip,去官网瞅了一眼发现2.7.9和3.4及以上版本已经内置了pip,那还废话什么立马去更新到2.7.9(请允许我吐槽公司网速!)
更新之后,在D:\Python27目录下并没有Scripts这个文件夹,什么鬼!没有就没有吧,那我来手动安装pip,具体过程不说了,balabala,装好了,输入pip -V可用,运行pip install package,结果如图:
解决办法,打开D:\Python27\lib\mimetypes.py文件,在254行附近加入两行代码修改如下:
with _winreg.OpenKey(_winreg.HKEY_CLASSES_ROOT, '') as hkcr:
for subkeyname in enum_types(hkcr):
try:
if '\0' in subkeyname: # new
continue # new
with _winreg.OpenKey(hkcr, subkeyname) as subkey:
# Only check file extensions
if not subkeyname.startswith("."):
continue
# raises EnvironmentError if no 'Content Type' value
mimetype, datatype = _winreg.QueryValueEx(
subkey, 'Content Type')
if datatype != _winreg.REG_SZ:
continue
try:
mimetype = mimetype.encode(default_encoding)
except UnicodeEncodeError:
continue
self.add_type(mimetype, subkeyname, strict)
except EnvironmentError:
continue
这样再使用pip的时候就不会有问题了,这个问题实际上是因为HKEY_CLASSES_ROOT损坏的注册表项导致的,这可能是一个很好的解决方案,如果你不希望修改注册表的话,这个问题在python3.4版本中也可能存在。