之前在安装BeautifulSoup就遇到过问题。
【前言】因为我装了python2.7和python3.4,上次在装BeautifulSoup想装到3结果装到2了。因为虽然环境变量两个版本都设了,但在cmd中运行python,是python2(py3的话,我输python3、python3.4.2都不行,不管了)。为了避免装到py2中,我先把py2的环境变量删除了。
从这里https://pypi.python.org/pypi/rsa/3.1.4下载rsa的安装包,解压。不知道解压放在哪个文件夹好,我的python目录是D:\python3.4.2,不是一般第三方库都是有讲究的吗,是放在D:\python3.4.2\Lib\site-packages、D:\python3.4.2\Lib\idlelib、还是D:\python3.4.2\Scripts下呢?我也不知道,就解压放在D:\python3.4.2\Lib\rsa-3.1.4这里好了,因为在cmd中安装后,会生成.egg-info文件,不知道它会不会自己把需要的文件放在应该放的文件夹下。
之后,在cmd中pip install rsa,居然没有反应,我上次装BeautifulSoup就是这样的啊,回顾一下上次:
回顾结束
因为上次用pip会自动下下BeautifulSoup,所以我这次就没下,直接在命令行输入pip install rsa,有错。我只好下下来,再pip install rsa,还是有错,只好cd到rsa目录下,python setup.py install.
请看安装过程(不完全截图)
可以看到running install,是没有重新下rsa包的。有个running egg_info,在没安装前,rsa.egg-info文件夹就存在了。
可以看到,创建了子目录build文件夹和build\lib,build\lib\rsa文件夹,有好多copy,从rsa-3.1.4文件夹下的rsa文件夹拷入新建的文件夹(可能要是用pip,下载下来它自己会分配文件夹,就不像现在要从我下载下来的放到新文件夹下了)。
发现最后还去pypi网站找best match是pyasn1 0.1.7了(好像是rsa的dependency),然后又下载下来。最后可以在D:\python3.4.2\Lib\site-packages下找到pyasn1-0.1.7的egg文件。
当导入一个模块是,python在几个地方进行搜索:
>>> import sys
>>> sys.path
['', 'D:\\python3.4.2\\Lib\\idlelib', 'D:\\python3.4.2\\lib\\site-packages\\rsa-3.1.4-py3.4.egg', 'D:\\python3.4.2\\lib\\site-packages\\pyasn1-0.1.7-py3.4.egg', 'C:\\Windows\\system32\\python34.zip', 'D:\\python3.4.2\\DLLs', 'D:\\python3.4.2\\lib', 'D:\\python3.4.2', 'D:\\python3.4.2\\lib\\site-packages']
我电脑上python2的库更多
['', 'C:\\Python27\\Lib\\idlelib', 'C:\\Windows\\system32\\python27.zip', 'C:\\Python27\\DLLs', 'C:\\Python27\\lib', 'C:\\Python27\\lib\\plat-win', 'C:\\Python27\\lib\\lib-tk', 'C:\\Python27', 'C:\\Python27\\lib\\site-packages', 'C:\\Python27\\lib\\site-packages\\win32', 'C:\\Python27\\lib\\site-packages\\win32\\lib', 'C:\\Python27\\lib\\site-packages\\Pythonwin', 'C:\\Python27\\lib\\site-packages\\wx-2.8-msw-unicode']
完