uncategorized

웹 기본 지식 이해하기 01(chrome을 이용하여 웹페이지 분석하기)

HTTP

  • HyperText Transfer Protocol: HTML(HyperText Markup language) 문서 등의 리소스를 전송하는 프로토콜(규약)

그림 00

클라이언트에서 서버로 HTTP 요청을 하는데 이 요청 방식으로는 Get, Post, Put, delete, Option등이 있는데 이 중 크롤링에서 가장 많이 쓰이는 두가지(Get, Post)를 알아볼 것이다.

  • GET 요청 : 데이터를 URL에 포함하여 전달이 가능하다. 그러므로 정보의 공유가 가능하다. 공유가 가능하다는 의미는 가장 쉬운 예를 들자면 URL 클릭하면 그 정보를 담고있는 웹 페이지를 요청하여 우리의 웹 브라우져에 랜더링을 거쳐 보여주는 것이 가능하다는 의미이다.(주로 리소스 요청에 사용)
    • ex)https://search.naver.com/search.naver?sm=top hty&fbm=1
  • POST 요청 : 데이터를 Form data에 포함하여 전달 그래서 대부분 우리 눈에 안보이는 요청이다.(주로 로그인에 사용) 예를 들어 설명하자면, 먼저 로그인 페이지가 있다면, 참고로 이 로그인 페이지는 리소스를 요청하는 것이므로 GET 방식이고 로그인 페이지에서 로그인을 하는 행위를 할 경우 이 떄 사용된다.
    • ex) https://www.kangco.com/meber/member_check.asp

어떠한 방식으로 해당 웹 페이지가 서버에 요청을 하는지는 개발자 도구의 Network 탭에서 특정 Name을 클릭 후 Request Method를 보면서 확인할 수 있다.

HTML element 이해하기(tag, attribute, value)

  • HTML(Hyper Text Markup Language)

    • 웹사이트를 생성하기 위한 언어로 문서와 문서가 링크로 연결되어 있고, tag를 사용하는 언어
  • 태그(Tag)란?

    • HTML 문서의 기본 블락
    • <태그명 속성1="속성값1" 속성2="속성값2">Value</태그명> (Value가 있는 경우)
    • <태그명 속성1="속성값1" 속성2="속성값2/"> (Value가 없는 경우)

크롤링을 단 한번이라도 직접 해보신 분들은 우리가 원하는 값을 추출하기 위해서는 어느 정도의 HTML 지식이 있어야한다. 즉, Value를 추출하기 위해 해당 Value가 포함되어 있는 tag의 구조를 알아야 한다는 것이다. 위의 단순한 tag의 구조는 그런 관점에서 혹시라도 HTML의 구조를 모르시분들을 위해 간단히 설명하고 넘어가는 것이다.

Requests 모듈

  • http request/response를 위한 모듈
  • HTTP method를 메소드 명으로 사용하여 request 요청 예)GET, POST
  • 가장 우리가 흔하게 크롤링을 하는데 사용하는 방식이며, API만 알고 있다면 쉽게 사용할 수 있다!