re.error:缺少),通过pip安装时,位置0处的子模式未终止

时间:2018-12-09 05:01:17

标签: python windows pip python-requests registry

我对编程还比较陌生,但遇到了一个问题。我已经安装了Python 3.7和pip 10.0,但是当我尝试执行诸如安装virtualenv之类的操作时,会出现一堆错误消息。我导致使用easy_install,但使用pip的问题仍然存在。我唯一的猜测是,pip的某些部分可能无法正确安装,但我尝试再次尝试卸载并安装失败。

2 个答案:

答案 0 :(得分:1)

failing code正在proxyOverrideHKEY_CURRENT_USER的计算机注册表中测试Software\Microsoft\Windows\CurrentVersion\Internet Settings的设置。

proxyOverride似乎是一个用分号分隔的字符串,并且字符串中的值之一显然以与封闭括号不匹配的开括号开头,因此类似:

"ProxyOverride"="(www.foo-;*.bar.com"

此不匹配的括号引起了错误:

File "c:\users\"name"\appdata\local\programs\python\python37\lib\site-packages\pip\_vendor\requests\utils.py", line 74, in proxy_bypass_registry if re.match(test, host, re.I): ... re.error: missing ), unterminated subpattern at position 0

如果您的计算机位于IT部门支持的网络上,则应询问他们proxyOverride密钥中的值是否有效,以及是否可以删除有问题的括号。

如果您是您自己的IT部门,则可以尝试自己编辑注册表,但是请记住,编辑注册表应格外小心,并且应该首先备份注册表,并知道如何进行备份。如果需要,可以从备份中还原注册表。

答案 1 :(得分:0)

我遇到了同样的问题,以防万一其他人遇到同样的问题,我认为值得一提的是我的问题是由Autodesk Fusion 360引起的。这是使用云的3D CAD软件,它增加了很多带有括号的值,该值由snakecharmerb提到的ProxyOverride注册表变量:

HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings "ProxyOverride"

DID的值带有右括号,因此我不确定为什么Python抛出错误。无论如何,在我暂时删除与Autodesk相关的值之后,pip都可以正常工作。完成后,我将这些值放回注册表中,将来我想使用pip时必须记住这种解决方法。