March 2017 Blog Posts

Python重新安装所有模块

MitchellChu 2017-03-10 其他技术

系统重装后,也重装了,重装的时候,Python选的路径还是原来的,直接覆盖,因为很多packages,舍不得!但在使用命令行工具的时候,却报错:

Fatal error in launcher: Unable to create process using '"'

处理的方法是将所有的python2.7下可以用命令行直接调用的包重新安装。也即Scripts文件夹下的exe对应的包重装,方法如下:

@echo OFF
REM 指定Scripts所在路径
set ScriptsHome=D:\Program Files\Python\2.7\Scripts
REM 遍历文件,并获取文件名
for /F "delims=\" %%a in ('dir /b /a-d /o-d "%ScriptsHome%\*.exe"') do (
  REM 调用pip install来重新安装,
  REM 注意::这里使用--force-reinstall参数
  pip install %%~na --upgrade --force-reinstall
)

的过程中,会有很多package提示没有(因为那时真的没有,有些包提供了几个命令行工具而已!=.=!!!),忽略即可,实在不放心,你可以尝试两遍上面的代码来重装,当所有的packages重新安装后,直接使用时将不会出现上面的错误。

 

TIPS:在安装的时候 ,如果有的包依赖了lxml的话,将会出现报错:

Cannot open include file: 'libxml/xpath.h': No such file or directory
    *********************************************************************************
    Could not find function xmlCheckVersion in library libxml2. Is libxml2 installed?
    *********************************************************************************

这个报错是因为在编译安装(需要VC++的编译环境,没有的话,请先安装VCForPython27,微软官网下载)的时候需要libxml2的支持,然而,似乎没有简单的方法可以直接处理,因此,直接到这里1下载对应的whl文件来进行安装更合适。

pip install path\to\lxml.whl

 

当然,如果你pip都报错的话,自然需要先安装好pip这个命令在来操作上面这些了。

 

参考:

1. http://www.lfd.uci.edu/~gohlke/pythonlibs/#lxml

关于博主

  一枚成分复杂的网络IT分子,属于互联网行业分类中的杂牌军。