본문 바로가기
프로그래밍/python

[python] pip install 명령 실행시 "ValueError: invalid literal for int() with base 10: '\x00\x00\x00\x00'" 오류 해결

by 왕초보 개발자 2021. 3. 23.
728x90

python 3.7.5 버전 설치 후 패키지를 설치하려고 pip install 명령을 실행했는데 다음과 같은 오류가 발생했다


Exception:
Traceback (most recent call last):
  File "c:\python\lib\site-packages\pip\_internal\cli\base_command.py", line 143, in main
    status = self.run(options, args)
  File "c:\python\lib\site-packages\pip\_internal\commands\install.py", line 318, in run
    resolver.resolve(requirement_set)
  File "c:\python\lib\site-packages\pip\_internal\resolve.py", line 102, in resolve
    self._resolve_one(requirement_set, req)
  File "c:\python\lib\site-packages\pip\_internal\resolve.py", line 256, in _resolve_one
    abstract_dist = self._get_abstract_dist_for(req_to_install)
  File "c:\python\lib\site-packages\pip\_internal\resolve.py", line 209, in _get_abstract_dist_for
    self.require_hashes
  File "c:\python\lib\site-packages\pip\_internal\operations\prepare.py", line 218, in prepare_linked_requirement
    req.populate_link(finder, upgrade_allowed, require_hashes)
  File "c:\python\lib\site-packages\pip\_internal\req\req_install.py", line 164, in populate_link
    self.link = finder.find_requirement(self, upgrade)
  File "c:\python\lib\site-packages\pip\_internal\index.py", line 572, in find_requirement
    all_candidates = self.find_all_candidates(req.name)
  File "c:\python\lib\site-packages\pip\_internal\index.py", line 530, in find_all_candidates
    for page in self._get_pages(url_locations, project_name):
  File "c:\python\lib\site-packages\pip\_internal\index.py", line 675, in _get_pages
    page = self._get_page(location)
  File "c:\python\lib\site-packages\pip\_internal\index.py", line 793, in _get_page
    return _get_html_page(link, session=self.session)
  File "c:\python\lib\site-packages\pip\_internal\index.py", line 144, in _get_html_page
    "Cache-Control": "max-age=0",
  File "c:\python\lib\site-packages\pip\_vendor\requests\sessions.py", line 525, in get
    return self.request('GET', url, **kwargs)
  File "c:\python\lib\site-packages\pip\_internal\download.py", line 396, in request
    return super(PipSession, self).request(method, url, *args, **kwargs)
  File "c:\python\lib\site-packages\pip\_vendor\requests\sessions.py", line 503, in request
    prep.url, proxies, stream, verify, cert
  File "c:\python\lib\site-packages\pip\_vendor\requests\sessions.py", line 676, in merge_environment_settings
    env_proxies = get_environ_proxies(url, no_proxy=no_proxy)
  File "c:\python\lib\site-packages\pip\_vendor\requests\utils.py", line 762, in get_environ_proxies
    if should_bypass_proxies(url, no_proxy=no_proxy):
  File "c:\python\lib\site-packages\pip\_vendor\requests\utils.py", line 746, in should_bypass_proxies
    bypass = proxy_bypass(parsed.hostname)
  File "c:\python\lib\site-packages\pip\_vendor\requests\utils.py", line 95, in proxy_bypass
    return proxy_bypass_registry(host)
  File "c:\python\lib\site-packages\pip\_vendor\requests\utils.py", line 61, in proxy_bypass_registry
    'ProxyEnable')[0])
ValueError: invalid literal for int() with base 10: '\x00\x00\x00\x00'

이게 뭔가 싶어서 여기저기 찾아봤는데, 나는 다음과 같은 방법으로 해결했다.

아래 경로의 파일을 열어서 대략 60줄 정도 위치에 있는 proxyEnable를 찾는다. 각자 python 설치한 경로를 따라가면 찾을 수 있다
C:\Program Files\Python37\Lib\site-packages\pip_vendor\requests\utils.py

proxyEnable = int(winreg.QueryValueEx(internetSettings, 'ProxyEnable')[0]) 

여기서 int()를 제거하고 utils.py 파일을 저장한다.

proxyEnable = winreg.QueryValueEx(internetSettings, 'ProxyEnable')[0]

저장 후 관리자 권한으로 터미널 실행시켜 pip install 명령어를 치니 정상적으로 동작했다.

당장의 오류 해결은 했다만, 혹시 이게 차후 개발중에 영향을 주는지는 개발을 하면서 지켜봐야 할 듯 하다

728x90