3장. API를 이용한 크롤링

Updated:

실습_3. API를 이용한 크롤링

https://curl.trillworks.com/

API

  • Application Programming Interface

  • 프로그램들 사이를 연결해주는 매개체

  • API 정보는 크롤링을 할수 없다
    (GET 요청한 후에 API정보 를 표시하기 때문에)

  • 보통 API를 이용한 데이터는 ‘동적’으로 변화하는 일이 많아
    실시간으로 값을 불러와야 하는 경우이다

  • 크롬 개발자 도구의 Network 탭에서 웹사이트가 데이터를
    요청하는 API를 볼 수 있다

url = "http://.../api/.../...
req = requests.get(url) # JSON 데이터
  • API의 URL에 GET 요청을 보내면 JSON 데이터를 얻을 수 있다
  • JSON은 key와 value를 저장하는, 딕셔너리 꼴의 데이터 형식이다

  • 몇몇 웹 사이트들은 크롤러 등을 통한 기계적인 접근을 막고 있다
    이를 우회하기 위해 requests.get메소드에 “headers”매개변수를
    지정해주어야 한다

  • ‘헤더’란 HTTP 상에서 클라이언트와 서버가 요청 또는 응답을 보낼 때
    전송하는 부가적인 정보를 의미한다
custom_header = {
  'referer' : ...
  'user-agent' : ...  }
  • referer은 이전 웹 페이지의 주소를 의미
  • user-agent는 이용자의 여러 가지 사양을 의미

JSON

import json
with open("stock.json") as stock :
    data = json.loads(stock) 
  • stock.json 이라는 json 데이터를 data 변수에 로드

Leave a comment