[Python] http 리퀘스트 처리하기

2015. 6. 23. 16:13·python

 

HTTP 리퀘스트 처리하기

파이선에서 http 리퀘스트를 처리하는 방법에는 urllib, urllib2 모듈을 이용하는 방법이 있다.

 

urllib 모듈은 http, ftp, file 등의 처리도 동시에 가능하다.

urllib2 모듈은 리퀘스트 시점에 헤더 정보를 입력하는 것이 가능하다.

 

requests 모듈은 파이선의 기본 모듈이 아니라 추가적으로 설치하여 사용하는 모듈이다.

 

예제

 

#!/usr/bin/python
# -*- coding: utf-8 -*-
import urllib
import urllib2
import requests

# urllib - Open arbitrary resources by URL
# urllib2 - extensible library for opening URLs -> 파이선3 urllib.request, urllib.error

url = 'http://www.naver.com'

def urllib_sample():
    response = urllib.urlopen(url)
    
    print response.headers
    print response.code
    print response.read()
    
def urllib2_sample():
    opener = urllib2.build_opener()
    opener.addheaders = [("User-agent", "Mozilla/5.0")]
    response = opener.open(url)
    
    print response.headers
    print response.read()

def requests_sample():
    response = requests.get(url, headers={"User-agent" : "Mozilla/5.0"})
    print response.text

    
urllib_sample()
urllib2_sample()
requests_sample()
반응형
저작자표시 비영리 (새창열림)

'python' 카테고리의 다른 글

python2의 map, filter, reduce 함수  (0) 2015.12.28
[Python] ==과 is 의 차이  (0) 2015.08.05
[python] 문자열 치환 방법  (0) 2015.06.12
[python] subprocess 모듈을 이용한 명령어 실행  (1) 2015.06.11
파이썬의 중요 특징(클로저함수, 장식자, 생성기, 코루틴)  (0) 2015.02.09
'python' 카테고리의 다른 글
  • python2의 map, filter, reduce 함수
  • [Python] ==과 is 의 차이
  • [python] 문자열 치환 방법
  • [python] subprocess 모듈을 이용한 명령어 실행
hs_seo
hs_seo
Hello World!
    반응형
  • hs_seo
    개발자로 살아남기
    hs_seo
  • 전체
    오늘
    어제
    • 전체 (1140)
      • 개발자 (21)
        • 개발에 유의할 점 (0)
        • 면접 (5)
      • IT 소식 (5)
        • 업계 (1)
      • java (51)
        • 디자인패턴 (3)
        • apache-common (1)
      • 개념 (47)
        • 자료구조 (4)
        • 함수형사고 (8)
        • 디자인패턴 (1)
      • 데이터분석 (1)
      • python (67)
        • 코드조각 (12)
        • 라이브러리 (2)
      • 빅데이터 (418)
        • zookeeper (5)
        • hadoop (78)
        • hdfs (12)
        • hive (127)
        • hbase (16)
        • spark (40)
        • scala (4)
        • trino (3)
        • oozie (41)
        • Hue (9)
        • R (5)
        • sqoop (6)
        • flume (3)
        • elasticsearch (2)
        • airflow (16)
        • kafka (3)
        • kubernetes (10)
        • openstack (3)
        • flink (2)
        • redis (2)
      • 빅데이터 강좌 (2)
      • 알고리즘 (131)
        • 알고리즘 (1)
        • 백준 (61)
        • 정올 (41)
        • 더블릿 (5)
        • 프로그래머스 (1)
      • 프로그래밍 언어 (30)
        • go (4)
        • js (9)
        • .Net (6)
        • Jsp (1)
        • ansible (3)
        • terraform (6)
      • Tools (56)
        • docker (2)
        • macbook (6)
        • maven (3)
        • sublime (1)
      • 프레임워크 (25)
        • [JS] angularjs (2)
        • [JS] node.js (19)
        • [Java] spring (2)
        • Android (2)
      • 데이타베이스 (43)
        • SQLD (5)
        • Oracle (1)
        • MySQL (8)
        • ADsP (2)
      • 리눅스 (25)
        • Bash (61)
      • GCP (5)
      • AWS (34)
        • EC2 (2)
        • EMR (14)
      • 정보보안기사 (4)
        • 네트워크 (1)
      • 개인 (80)
        • 업무실수 (0)
        • 책 (9)
        • 교육 (3)
        • 여행 (17)
        • 영화 (12)
        • 음악 (2)
        • 피규어 (4)
        • 게임 (3)
        • 생각 (7)
        • 기타 (10)
        • 좋은글 (5)
        • 좋은 사이트 (2)
  • 블로그 메뉴

    • 홈
    • 태그
    • 미디어로그
    • 위치로그
    • 방명록
  • 링크

    • 빅데이터-하둡,하이브로 시작하기
    • 빅데이터-스칼라, 스파크로 시작하기
    • Kaggle에서 파이썬으로 데이터 분석 시작하기
    • 쉘스크립트 개발 시작하기
    • 개발자가 데이터 분석 준전문가 되기
    • 데브쿠마
  • 공지사항

  • 인기 글

  • 태그

    오류
    build
    Hadoop
    다이나믹
    bash
    Linux
    mysql
    Python
    yarn
    error
    S3
    ubuntu
    백준
    hbase
    SPARK
    하둡
    airflow
    정올
    nodejs
    하이브
    알고리즘
    oozie
    Tez
    HDFS
    emr
    HIVE
    파이썬
    java
    AWS
    k8s
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.6
hs_seo
[Python] http 리퀘스트 처리하기
상단으로

티스토리툴바