본문 바로가기

웹/Django

djando 0. 웹 클라이언트 라이브러리

1. urllib.parse 모듈

    이 모듈은 url을 파싱한 결과로 ParseResult 인스턴스를 반환한다.

    그 결과는 여러개가 있지만 그 중 중요한 것을 살펴보자 

    a. netloc  : 네트워크의 위치와 포트 표시

    b. path  :  파일이나 애플리케이션 경로 표시

    c. query  :  쿼리 스트링 표시

     

2.urllib.request 모듈 

    urllib.request 모듈은 주어진 url 에서 데이터를 가져오는 기능을 제공한다.

    이 모듈에서 가장 기본적인 함수는 urlopen() 이다.

    urlopen() 을 사용해 보자 

 

    ex)  urlopen(url, data=None , [timeout] )

    

    a. 기본적인 요청방식은 get 이다. 전달할 파라미터가 있으면 url 인자에 포함해서 보낸다. 

    b. post 로 보내고 싶다면 data 에 문자열을 지정해야한다. 이때 data에 필요한 인자는

       url인코딩이 필요하고, bytes 타입이어야 한다.

       post 방식의 요청을 사용해 보자

1
2
data = "language=python&framework=django"
= urlopen("요청할 url",bytes(data,encoding='urf-8'))
cs

    c. 만일 요청을 보낼 때 헤더를 지정하고 싶은 경우에는 url 대신에 Request 객체를 지정하고 .add_header() 메소드로 

       헤더를 추가한다.

       한번 예시를 보자

1
2
encoding된 data 는 bytes(urlencode(data),encoding='utf-8')
= urlopern(Request('요청할 url',encoding된 data).add_header('Content-type','application/x-www-form-urlencoded'
cs

    d. url 대신 file 의 위치를 지정하면 로컬 파일을 열 수도 있다. 

    e. get / post 는 urlopen 만 사용해도 되지만 post 등의 메소드같이 헤더의 조작이 필요하다면 request 클래스를 사          용해햐 한다.

    

    

' > Django' 카테고리의 다른 글

Django 2. 프로젝트 뼈대 만들기  (0) 2021.05.10
django 1. 개발환경 구축하기  (0) 2021.05.10
테스트 하기  (0) 2020.12.23
배포시 주의점  (0) 2020.12.21
장고 프로젝트 순서2 - 뷰  (0) 2020.12.14