urllib2는 Python2.7과 함께 제공되는 모듈입니다(다운로드할 필요 없이 가져와서 사용하기만 하면 됩니다).
urllib2 라이브러리의 기본 사용
소위 웹 페이지 크롤링은 URL 주소에 지정된 네트워크 리소스를 네트워크 스트림에서 읽어 로컬에 저장하는 것입니다. Python에는 웹 페이지를 크롤링하는 데 사용할 수 있는 많은 라이브러리가 있습니다. 먼저 urllib2를 배워 보겠습니다.
urllib2 是 Python2.7 自带的模块(不需要下载,导入即可使用) urllib2 官方文档:https://docs.python.org/2/library/urllib2.html urllib2 源码:https://hg.python.org/cpython/file/2.7/Lib/urllib2.py
urllib2는 python3에서 urllib.request
urlopen
으로 변경되었습니다. 컴퓨터에서 Baidu 홈페이지를 열고 마우스 오른쪽 버튼을 클릭한 후 "소스 코드 보기"를 선택하면 정확히 동일한 것을 확인할 수 있습니다. 방금 인쇄했습니다. 즉, 위의 4줄의 코드는 Baidu 홈페이지의 모든 코드를 크롤링하는 데 도움이 되었습니다.
기본 URL 요청에 해당하는 Python 코드는 정말 매우 간단합니다.
Request첫 번째 예에서 urlopen()의 매개 변수는 URL 주소입니다. 그러나 HTTP 헤더 추가와 같은 더 복잡한 작업을 수행해야 하는 경우 urlopen( ); 액세스해야 하는 URL 주소는 요청 인스턴스의 매개변수로 사용됩니다.
urllib2_request.py를 편집했습니다
# urllib2_urlopen.py # 导入urllib2 库 import urllib2 # 向指定的url发送请求,并返回服务器响应的类文件对象 response = urllib2.urlopen("http://www.baidu.com") # 类文件对象支持 文件对象的操作方法,如read()方法读取文件全部内容,返回字符串 html = response.read() # 打印字符串 print html
실행 결과는 완전히 같습니다:
Power@PowerMac ~$: python urllib2_urlopen.pyUser-Agent
하지만 urllib2를 직접 사용하여 웹사이트에 요청을 보내는 경우에는 실제로 약간 갑작스럽습니다. 다들 그렇듯 집집마다 문이 있으니 그냥 지나가던 사람처럼 끼어드는 건 예의가 아닌 게 분명해요. 또한 일부 사이트는 프로그램의 방문(사람이 아닌 방문)을 좋아하지 않으며 귀하의 액세스 요청을 거부할 수도 있습니다. 그러나 다른 사람의 웹사이트를 요청하기 위해 법적 ID를 사용한다면 그들은 분명히 이를 환영할 것이므로 소위 User-Agent 헤더라고 하는 코드에 ID를 추가해야 합니다.
브라우저는 인터넷 세계에서 인정되고 허용되는 ID입니다. 크롤러 프로그램이 실제 사용자와 유사해지기를 원한다면 첫 번째 단계는 인식된 브라우저인 것처럼 가장하는 것입니다. 요청을 보낼 때 브라우저마다 User-Agent 헤더가 다릅니다. urllib2의 기본 User-Agent 헤더는 다음과 같습니다. Python-urllib/x.y(x와 y는 Python-urllib/2.7과 같은 Python 주 및 부 버전 번호입니다)# urllib2_request.py import urllib2 # url 作为Request()方法的参数,构造并返回一个Request对象 request = urllib2.Request("http://www.baidu.com") # Request对象作为urlopen()方法的参数,发送给服务器并接收响应 response = urllib2.urlopen(request) html = response.read() print html
HTTP에서 더 많은 헤더 정보 추가
완전한 HTTP 요청 메시지를 구성하려면 요청에 특정 헤더를 추가하세요.
Request.add_header()를 호출하여 특정 헤더를 추가/수정하거나 Request.get_header()를 호출하여 기존 헤더를 볼 수 있습니다.특정 헤더 추가
新建Request实例,除了必须要有 url 参数之外,还可以设置另外两个参数: data(默认空):是伴随 url 提交的数据(比如要post的数据),同时 HTTP 请求将从 "GET"方式 改为 "POST"方式。 headers(默认空):是一个字典,包含了需要发送的HTTP报头的键值对。 这两个参数下面会说到。
User-Agent를 임의로 추가/수정
#urllib2_useragent.py import urllib2 url = "http://www.itcast.cn" #IE 9.0 的 User-Agent,包含在 ua_header里 ua_header = {"User-Agent" : "Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0;"} # url 连同 headers,一起构造Request请求,这个请求将附带 IE9.0 浏览器的User-Agent request = urllib2.Request(url, headers = ua_header) # 向服务器发送这个请求 response = urllib2.urlopen(request) html = response.read() print html
관련 튜토리얼 권장 사항: Python 비디오 튜토리얼
위 내용은 Python에 urllib2 라이브러리를 설치하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

Python과 C는 각각 고유 한 장점이 있으며 선택은 프로젝트 요구 사항을 기반으로해야합니다. 1) Python은 간결한 구문 및 동적 타이핑으로 인해 빠른 개발 및 데이터 처리에 적합합니다. 2) C는 정적 타이핑 및 수동 메모리 관리로 인해 고성능 및 시스템 프로그래밍에 적합합니다.

Python 또는 C를 선택하는 것은 프로젝트 요구 사항에 따라 다릅니다. 1) 빠른 개발, 데이터 처리 및 프로토 타입 설계가 필요한 경우 Python을 선택하십시오. 2) 고성능, 낮은 대기 시간 및 근접 하드웨어 제어가 필요한 경우 C를 선택하십시오.

매일 2 시간의 파이썬 학습을 투자하면 프로그래밍 기술을 효과적으로 향상시킬 수 있습니다. 1. 새로운 지식 배우기 : 문서를 읽거나 자습서를 시청하십시오. 2. 연습 : 코드를 작성하고 완전한 연습을합니다. 3. 검토 : 배운 내용을 통합하십시오. 4. 프로젝트 실무 : 실제 프로젝트에서 배운 것을 적용하십시오. 이러한 구조화 된 학습 계획은 파이썬을 체계적으로 마스터하고 경력 목표를 달성하는 데 도움이 될 수 있습니다.

2 시간 이내에 Python을 효율적으로 학습하는 방법 : 1. 기본 지식을 검토하고 Python 설치 및 기본 구문에 익숙한 지 확인하십시오. 2. 변수, 목록, 기능 등과 같은 파이썬의 핵심 개념을 이해합니다. 3. 예제를 사용하여 마스터 기본 및 고급 사용; 4. 일반적인 오류 및 디버깅 기술을 배우십시오. 5. 목록 이해력 사용 및 PEP8 스타일 안내서와 같은 성능 최적화 및 모범 사례를 적용합니다.

Python은 초보자 및 데이터 과학에 적합하며 C는 시스템 프로그래밍 및 게임 개발에 적합합니다. 1. 파이썬은 간단하고 사용하기 쉽고 데이터 과학 및 웹 개발에 적합합니다. 2.C는 게임 개발 및 시스템 프로그래밍에 적합한 고성능 및 제어를 제공합니다. 선택은 프로젝트 요구와 개인적인 이익을 기반으로해야합니다.

Python은 데이터 과학 및 빠른 개발에 더 적합한 반면 C는 고성능 및 시스템 프로그래밍에 더 적합합니다. 1. Python Syntax는 간결하고 학습하기 쉽고 데이터 처리 및 과학 컴퓨팅에 적합합니다. 2.C는 복잡한 구문을 가지고 있지만 성능이 뛰어나고 게임 개발 및 시스템 프로그래밍에 종종 사용됩니다.

파이썬을 배우기 위해 하루에 2 시간을 투자하는 것이 가능합니다. 1. 새로운 지식 배우기 : 목록 및 사전과 같은 1 시간 안에 새로운 개념을 배우십시오. 2. 연습 및 연습 : 1 시간을 사용하여 소규모 프로그램 작성과 같은 프로그래밍 연습을 수행하십시오. 합리적인 계획과 인내를 통해 짧은 시간에 Python의 핵심 개념을 마스터 할 수 있습니다.

Python은 배우고 사용하기 쉽고 C는 더 강력하지만 복잡합니다. 1. Python Syntax는 간결하며 초보자에게 적합합니다. 동적 타이핑 및 자동 메모리 관리를 사용하면 사용하기 쉽지만 런타임 오류가 발생할 수 있습니다. 2.C는 고성능 응용 프로그램에 적합한 저수준 제어 및 고급 기능을 제공하지만 학습 임계 값이 높고 수동 메모리 및 유형 안전 관리가 필요합니다.


핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

Video Face Swap
완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

인기 기사

뜨거운 도구

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

드림위버 CS6
시각적 웹 개발 도구

안전한 시험 브라우저
안전한 시험 브라우저는 온라인 시험을 안전하게 치르기 위한 보안 브라우저 환경입니다. 이 소프트웨어는 모든 컴퓨터를 안전한 워크스테이션으로 바꿔줍니다. 이는 모든 유틸리티에 대한 액세스를 제어하고 학생들이 승인되지 않은 리소스를 사용하는 것을 방지합니다.

맨티스BT
Mantis는 제품 결함 추적을 돕기 위해 설계된 배포하기 쉬운 웹 기반 결함 추적 도구입니다. PHP, MySQL 및 웹 서버가 필요합니다. 데모 및 호스팅 서비스를 확인해 보세요.

SublimeText3 영어 버전
권장 사항: Win 버전, 코드 프롬프트 지원!
