mobile menu

The Arrow Newsletter

mobile menu

urllib2 예제

간단한 상황에 대 한 urlopen 매우 사용 하기 쉽습니다. 그러나 HTTP URL을 열 때 오류 또는 사소한 경우가 발생하자마자 HyperText 전송 프로토콜에 대한 이해가 필요합니다. HTTP에 대한 가장 포괄적이고 신뢰할 수 있는 참조는 RFC 2616입니다. 이 문서는 기술 문서이며 읽기 쉽도록 의도된 문서가 아닙니다. 이 HOWTO는 URLlib2를 사용하여 설명하는 것을 목표로하며 HTTP에 대한 충분한 세부 정보를 통해 도움을 줍니다. urllib2 문서를 대체하기 위한 것이 아니라 추가 문서입니다. 위의 예제에서는 HTTPBasicAuthHandler를 빌드_오프너에만 제공했습니다. 기본적으로 오프너에는 일반 상황에 대한 처리기가 있습니다 – 프록시 처리기 (http_proxy 환경 변수와 같은 프록시 설정이 설정된 경우), 알 수 없음 처리기, HTTPHandler, HTTPDefaultErrorHandler, HTTPRedirectHandler, FTPHandler, FileHandler, HTTP오류 처리기. 위의 예에서 알 수 있듯이 기본 User-agent 헤더 값은 상수 파이썬-urllib로 구성되며 파이썬 인터프리터 버전이 뒤따릅니다. 다른 사람의 웹 리소스에 액세스할 수 있는 응용 프로그램을 만드는 경우 요청에 실제 사용자 에이전트 정보를 포함시켜 조회의 출처를 보다 쉽게 식별할 수 있습니다. 사용자 지정 에이전트를 사용하면 robots.txt 파일을 사용하여 크롤러를 제어할 수도 있습니다(robotparser 참조). 아래 예제 외에도 urllib2를 사용하여 하우토 가져오기 인터넷 리소스에 더 많은 예제가 제공됩니다.

링크를 방문할 때마다 헤더를 보내는데, 이 헤더는 귀하에 대한 몇 가지 기본 정보일 뿐입니다. 예를 들어 Google 애널리틱스에서 사용 중인 브라우저를 알고 있는 방법입니다. 다음은 urllib를 사용하는 첫 번째 및 가장 쉬운 예입니다. urllib.requests를 가져오기만 하면 됩니다. 거기에서 변수에 URL의 열기를 할당하 고 마지막으로 .read() 명령을 사용하여 데이터를 읽을 수 있습니다. 결과는 엄청난 혼란이지만 실제로 소스 코드를 읽었습니다. 파이썬 3의 urllib 모듈을 사용하면 프로그램을 통해 웹 사이트에 액세스 할 수 있습니다. 이것은 인터넷이 당신을 위해 열립니다으로 프로그램에 대한 많은 문을 엽니 다. 파이썬 3의 urllib은 파이썬 2의 urllib2와 약간 다르지만 대부분 동일합니다.

urllib을 통해 웹 사이트에 액세스하고, 데이터를 다운로드하고, 데이터를 구문 분석하고, 헤더를 수정하고, 수행해야 할 GET 및 POST 요청을 수행할 수 있습니다. 요청 패키지는 파일 업로드를 처리하는 더 간단한 방법을 제공합니다. 우리는 미래의 기사에서이 패키지의 사용을 다룰 것입니다. 지금은 urllib2 모듈을 사용하여 파일 업로드가 가능하다는 것을 알아야합니다 (설명서에서 세부 정보를 제외하더라도). 예를 들어 쿠키를 처리하는 오프너를 가져오거나 리디렉션을 처리하지 않는 오프너를 얻으려면 특정 처리기가 설치된 URL을 가져오려는 경우 오프너를 만들 수 있습니다. 200이 아닌 오류 코드의 경우 OpenerDirector.error()를 통해 프로토콜_error_code 처리기 메서드에 작업을 전달합니다.