-
[pip] pip search error: xmlrpc.client.Fault: <Fault -32500: 'RuntimeError>Python 2020. 12. 17. 18:18
pip search 커맨드가 PyPI 서버에 과부하를 줘서 현재 비활성화 상태.
지금은 트래픽 주범인 악성 IP의 소유자 및 거기 사용된 툴 관리자와 접촉 중이라고 한다.
파이썬 홈페이지 하단에서 연결되는 Status 페이지에서 현황을 확인할 수 있다.
pip으로 텔레그램 패키지를 설치하려고 아래 명령어를 실행했는데
pip search python-telegram-bot
이런 에러가 뜬다.
ERROR: Exception: Traceback (most recent call last): File "/usr/local/lib/python3.7/site-packages/pip/_internal/cli/base_command.py", line 224, in _main status = self.run(options, args) File "/usr/local/lib/python3.7/site-packages/pip/_internal/commands/search.py", line 62, in run pypi_hits = self.search(query, options) File "/usr/local/lib/python3.7/site-packages/pip/_internal/commands/search.py", line 82, in search hits = pypi.search({'name': query, 'summary': query}, 'or') File "/usr/local/lib/python3.7/xmlrpc/client.py", line 1112, in __call__ return self.__send(self.__name, args) File "/usr/local/lib/python3.7/xmlrpc/client.py", line 1452, in __request verbose=self.__verbose File "/usr/local/lib/python3.7/site-packages/pip/_internal/network/xmlrpc.py", line 46, in request return self.parse_response(response.raw) File "/usr/local/lib/python3.7/xmlrpc/client.py", line 1342, in parse_response return u.close() File "/usr/local/lib/python3.7/xmlrpc/client.py", line 656, in close raise Fault(**self._stack[0]) xmlrpc.client.Fault: <Fault -32500: 'RuntimeError: This API has been temporarily disabled due to unmanageable load and will be deprecated in the n ear future. Please use the Simple or JSON API instead.'>
검색해보니 pip 없어졌냐는 질문이 있다.
www.reddit.com/r/learnpython/comments/kd9qm3/is_pip_going_away_i_got_an_error_saying_pip_is/
답변은
pip search 커맨드가 PyPI 서버에 유난히 부담을 준다. (어느 모듈이 설치 가능한지 확인하느라 모듈 살펴봐야해서)
PyPI 운영진이 설명하길 pip search 커맨드가 쓰는 API endpoint가 무척 리소스 집약적이고, 전체 API 사용량에서 차지하는 비중이 커서,
퍼블릭으로 서비스하기에는 너무 비싸기 때문에 임시로 제한해둔 것이고, 곧 완전히 없애려는 중이다.
이쪽으로 가면 논의 과정을 살펴볼 수 있다.
github.com/pypa/pip/issues/5216
6월부터 API 사용량이 10배가 되어서 중단 외에는 마땅한 수가 없다고.. 노란선이 XMLRPC 기반의 search API call
진한 빨간선이 횟수 제한에 도달한 사람이고 연한 선이 나처럼 에러메시지를 받은 사람들이라고 한다.
논의가 아직 진행 중인 것 같다.
대안으로 리눅스의 yum이나 apt처럼 local xml을 보여주자는 사람도 있고, IP 밴을 해야하지 않냐는 의견도 있고.
pip search 이용자 대상으로 설문도 진행 중이다.
구체적인 현황은 여기 업데이트되어 있다.
어제 현황은 이렇다. XMLRPC 검색 엔드포인트는 검색이 계속 들어와서 여전히 비활성화 중이다.
악성 ip에서 들어오는 트래픽이 전혀 줄지 않아서, 관계자와 접촉하고 있는 모양이다.
status.python.org/incidents/grk0k7sz6zkp
무사히 해결돼서 다시 pip search 기능을 사용할 수 있었으면 좋겠다.
당장은 conda 외에는 이렇다할 대안책이 없는 것 같아서, 일단은 pypi 홈페이지에 직접 들어가서 검색했다.
'Python' 카테고리의 다른 글
[인코딩] 유니코드 인코딩 처리 (특히 json 입출력 시) (1) 2020.12.28 [datetime] 시간포맷: datetime.strftime("%Y-%m-%d") (0) 2020.12.18 [import] 폴더 안의 스크립트 임포트하기 (0) 2020.12.16 [Python] right shift와 powerSet (0) 2020.05.17