• 카테고리

    질문 & 답변
  • 세부 분야

    프로그래밍 언어

  • 해결 여부

    미해결

무슨소리인지 모르겠어요

20.01.28 17:35 작성 조회수 99

1

크롤링 개념이 너무 추상적이에요

각각의 다운받은 라이브러리가 뭘하는건지 모르겠구요

너무 어렵습니다

답변 1

답변을 작성해보세요.

3

크롤링은 개념 자체가 추상적인 내용입니다만 사실 그냥 용어일 뿐입니다. 쉽게 웹페이지를 다운로드 하여 내가 원하는 데이터를 뽑아내는게 목적이고 그걸 크롤링한다고 보시면 됩니다. 

해당 강좌에서 사용된 라이브러리는 이미 강좌에서 설명을 드린게 전부지만 좀 더 간략하게 설명을 덧붙이자면 

requests 라이브러리는 웹상의 웹페이지를 다운로드하는 역할을 해주는 라이브러리 입니다. 우리가 네이버 사이트에 접속을 해보면 정돈된 그림과 글자들이 보기좋게 출력되지만 마우스 우클릭 > 소스보기를 해보시면 나오는 그게 실제 네이버 서버가 전송해준 웹페이지 코드 입니다. 소스보기로 보이는 이 복잡한 코드를 웹브라우저가 깔끔하게 보여주는 역할을 해주는것이고 requests 는 이 소스보기 했을때 나오는 코드를 다운로드 하는 라이브러리라고 보시면 됩니다.

beautifulsoup 라이브러리는 문자열 혹은 바이너리 형태의 데이터를 분석해서 CSS 선택자 접근 혹은 HTML 태그 접근을 용이하게 해주는 라이브러리 입니다. 강좌에서는 위의 requests 라이브러리를 통해 다운로드 받은 코드를 beautifulsoup 라이브러리로 넘겨주어 분석하게 했습니다. 그러면 우리는 beautifulsoup 객체를 통해서 원하는 요소로 접근을 할 수 있게 됩니다. 사실 입문하시는 분들께 이 부분이 좀 어려운 부분입니다. HTML 태그는 뭐고 CSS 선택자는 뭐고... 참 어려운 말들만 나옵니다만 이 부분을 제대로 이해하려면, 크롤링을 제대로 이해하고 제작하려면 웹사이트를 어떻게 만드는지도 알아야 하는 부분이기도 합니다. 물론 웹사이트를 어떻게 만드는지 몰라도 되지만 어렵게 느껴지거나 특정 부분에서 이해가 가지 않는 내용들이 나올 수 있습니다. 어쨌든 이 부분은 하루아침에 쉽게 이해되지 않으실 수 있습니다. 무책임한 답변처럼 들리시겠지만 정말 이것저것 참고해보고 따라해보면서 연습해보고 익숙해지는 방법밖에는 없다고 생각됩니다.

requests_html 라이브러리는 좀 더 특수한 경우에 사용되나 위의 2가지만 아시면 될듯 합니다.

파이썬은 현존 하는 프로그래밍 언어중에선 가장 쉬운 언어입니다만 실제 프로그래밍을 입문하시는 입장에서는 모든게 다 어렵고 생소하게 느껴지실 겁니다. 쉽진 않겠지만 막연하게 어렵다는 내용보단 좀 더 구체적으로 어떤 부분이 이해가 가지 않는지 어떤게 어려운지를 생각해보시고 질문을 주시는게 공부하시는 입장에서도 답변하는 입장에서도 서로 좋을듯 합니다. 

프로그래밍을 난생 처음 해보시는 상황이라면 당연히 어려운게 정상입니다만 가장 큰 부분은 익숙하지 않다는 점도 있습니다. 익숙해지는데는 반드시 시간과 노력이 필요한 부분이라 생각됩니다.