활동/연구학점제

크롤링 기초(GET 방식과 POST 방식,한국 거래소에서 POST 방식을 이용해 URL 가져오기)

짐니♡ 2023. 7. 19. 18:59

연구학점제 시간에 진행한 수정종가 데이터 가져오기 정리본 앞부분 입니다.

 

 

Chapter 1. 크롤링 기초

 

1-(1) GET 방식과 POST 방식

1-(2) 한국 거래소에서 POST 방식을 이용해 URL 가져오기

 


1-(1) GET 방식과 POST 방식

우리가 매일 접하는 네이버,다음 같은 사이트에서 상단의 URL을 보면 우리가 피부과라는

검색어를 검색하고 싶을 때

https://search.daum.net/search?w=tot&DA=YZR&t__nil_searchbox=btn&sug=&sugo=&q=피부과

 

와 같이 URL에 우리가 원하는 정보를 결합하여 서버에 요청합니다.

이러한 방식이 바로 GET 방식

 

<GET 방식>

- 클라이언트가 입력한 값이 URL과 결합되어 스트링 형태로 서버에 전달됩니다

- 서버의 DB에 정보를 요청하는 것이 아니라 해당 웹페이지에서 보여지는 그대로를 가져오는 것입니다.

- 한번 요청시 데이터 양에 제한이 있습니다.

 

<POST 방식>

- 클라이언트와 서버 간에 스트링 형태로 그대로 서버에 전달되지 않고 인코딩이라는 과정을 거칩니다.

- 헤더를 통해 요청이 전송되는 방식입니다. 이 때문에 GET 방식과 같이 URL이 노출되지 않습니다.

- 요쳥시 GET 보다 더 많은 양의 정보를 교환할 수 있습니다.

- 페이지에서 날짜를 설정하고 조회하기 버튼을 눌렀을 때 서버는 DB에서 해당 기간에 해당되는 정보를 불러와 우리에게 보여줍니다.

- 조회하기 버튼을 눌렀을 때 URL client 에게 노출이 되지 않으며, GET방식에 비해 더 많은 양의 정보를 받아올 수 있다는 장점이 있습니다.

 

 


 

1-(2) 한국 거래소에서 POST 방식을 이용해 URL 가져오기

 

(1) 한국 거래소 홈페이지에 접속

 

http://www.krx.co.kr/main/main.jsp

 

상단 탭의 [정보데이터시스템]을 클릭

 

정보데이터시스템 화면에서 좌측 탭의 [종목정보]-[전종목 기본정보]를 클릭

 

(2) 네트워크 정보 확인

 

개발자도구(F12) 누른 후 우클릭 [검사]를 클릭 후 Network 탭을 클릭

 

네트워크 탭에 아래 두 파일이 생김

 

generate.cmd : OTP 생성

 

download.cmd : 생성한 OTP를 제출하고 파일을 다운로드.

 

(3) OTP 받아오기

 

먼저 OTP를 받아옵니다

GenerateOTP를 눌러보면, 우측에 Request URL 이 있을 것입니다.

 

POST 방식입니다.

스크롤을 내려보면 POST 방식으로 요청시 입력해야 하는 정보가 나옵니다.

(4) CSV 자료 요청하기

 

네트워크 탭에서 download.cmd 를 클릭

 

 

스크롤을 내려보면 Form Data가 있고 이 값이 otp

위에서 생성한 otp와 같다는 것을 알 수 있습니다.