Python 3의 Urllib2
-
Python 3의
urllib
-
Python에서
ModuleNotFoundError: No module named 'urllib2'
의 근본 원인 이해 -
Python에서
ModuleNotFoundError: No module named 'urllib2'
복제 -
Python에서
ModuleNotFoundError: No module named 'urllib2'
해결
이 튜토리얼에서는 Python에서 ModuleNotFoundError: No module named 'urllib2'
문제를 해결하는 방법을 탐색하는 것을 목표로 합니다.
Python 3의 urllib
URL 처리를 위한 Python 모듈을 urllib
패키지라고 합니다. URL을 가져올 수 있으며 다양한 프로토콜과 urlopen
메서드를 사용하여 URL을 가져올 수 있습니다.
urllib
패키지와 관련된 다른 메소드는 다음과 같습니다.
urllib.parse
- 이 방법은 주로 특정 URL 내의 데이터를 구문 분석하는 데 사용됩니다.urllib.request
- 이 메서드는 주로 매개변수로 전달된 URL을 요청하고 처리하는 데 사용됩니다.urllib.robotparser
- 이 방법은 파일의robot.txt
유형을 구문 분석합니다.urllib.error
- 이 방법은 주로urllib.request
기능을 사용하는 동안 발생한 오류를 식별하는 데 사용됩니다.
Python에서 ModuleNotFoundError: No module named 'urllib2'
의 근본 원인 이해
Python 3에서 urllib2
와 관련하여 가장 일반적으로 직면하는 오류 메시지는 ModuleNotFoundError
입니다. 이 오류는 주로 urllib2
가 Python 3에서 더 이상 지원되지 않기 때문에 발생합니다.
urllib2
문서에 따르면 urllib2
모듈은 urllib.request
및 urllib.error
라는 Python 3의 여러 모듈로 분할되었습니다. 이제 이 문제를 재현하는 방법을 이해하겠습니다.
Python에서 ModuleNotFoundError: No module named 'urllib2'
복제
위의 문제는 다음 코드 블록의 도움으로 설명할 수 있습니다.
import urllib2
출력:
ModuleNotFoundError: No module named 'urllib2'
오류를 생성하는 또 다른 시나리오는 urllib2
패키지 내의 urlopen
기능을 사용하는 것입니다. 이 함수는 Python 3의 패키지 내에서 request
라는 새 위치로 이동되었습니다.
이 문제는 다음 코드 블록을 사용하여 복제할 수 있습니다.
import urllib2.request
response = urllib2.urlopen("http://www.google.com")
html = response.read()
print(html)
위 코드의 출력은 다음과 같이 설명할 수 있습니다.
ModuleNotFoundError: No module named 'urllib2'
이제 문제를 재현하는 방법을 확인했으므로 수정해 보겠습니다.
Python에서 ModuleNotFoundError: No module named 'urllib2'
해결
오류를 해결하려면 위 코드를 약간 변경해야 합니다.
urllib2
대신urllib.request
를 사용하십시오.urllib2.urlopen("http://www.google.com")
대신urlopen("http://www.google.com/")
을 사용하십시오.
위의 변경 사항은 다음 코드 블록의 도움으로 구현됩니다.
from urllib.request import urlopen
html = urlopen("http://www.google.com/").read()
print(html)
위의 코드는 http://www.google.com/
페이지의 요소를 성공적으로 읽습니다.
따라서 Python 3에서 urllib2
와 관련된 문제를 성공적으로 해결했습니다.