使用pip安装requests包时,发生报错,起初以为是防火墙的问题,结果发现是Python中配置文件的问题。
报错内容如下:
/usr/local/lib/python2.7/dist-packages/pip/req/req_set.py", line 129, in prep_for_dist self.req_to_install.run_egg_info() File "/usr/local/lib/python2.7/dist-packages/pip/req/req_install.py", line 412, in run_egg_info self.setup_py, self.name, File "/usr/local/lib/python2.7/dist-packages/pip/req/req_install.py", line 387, in setup_py import setuptools # noqa File "/root/.local/lib/python2.7/site-packages/setuptools/init.py", line 12, in import setuptools.version File "/root/.local/lib/python2.7/site-packages/setuptools/version.py", line 1, in import pkg_resources File "/root/.local/lib/python2.7/site-packages/pkg_resources/init.py", line 72, in import packaging.requirements File "/root/.local/lib/python2.7/site-packages/packaging/requirements.py", line 59, in MARKER_EXPR = originalTextFor(MARKER_EXPR())("marker") TypeError: call() takes exactly 2 arguments (1 given)
解决办法:
在/usr/lib/python2.7目录下找到requirements.py
将MARKER_EXPR = originalTextFor(MARKER_EXPR())("marker")替换成MARKER_EXPR = originalTextFor(MARKER_EXPR)("marker")即可。