인프런 커뮤니티 질문&답변

제갈PM님의 프로필 이미지

작성한 질문수

파이썬입문과 크롤링기초 부트캠프 [파이썬, 웹, 데이터 이해 기본까지] (업데이트)

패턴으로 실습하며 익히기: HTML 이해를 바탕으로 크롤링하기

크롤링 패턴 코드 궁금한 점이 있습니다.

24.07.21 11:38 작성

·

79

·

수정됨

0

다음 코드는 크롤링 패턴 코드에서 앞 부분만 따왔습니다.

출처: 패턴으로 실습하며 익히기:HTML 이해를 바탕으로 크롤링하기

import reqests

해석: reqests라는 라이브러리를 가져온다.

from bs4 import BeautifulSoup

해석:bs4 라이브러리에서 뷰티플 솦이라는 클래스를 가져온다.

Q1 왜 두개의 라이브러리 명이 나올까요?

라이브러리 reqests, bs4

Q2처음 import는 라이브러리를 가져왔는데 왜다음 import 에서는 뷰티플 솦 클래스를 가져올까요?

그냥 코드쓰는 방식을 외워야 하나요?

답변 1

1

잔재미코딩 DaveLee님의 프로필 이미지

2024. 07. 22. 14:27

안녕하세요. 답변 도우미입니다.

 

Q1: 왜 두개의 라이브러리 명이 나올까요? 라이브러리 reqests, bs4

- requestsbs4는 각각 다른 목적을 가진 라이브러리입니다.

- requests: 웹 페이지의 HTML 소스를 가져오기 위해 사용되는 라이브러리입니다. 주로 HTTP 요청을 보내고 응답을 받아오는 작업을 합니다.

- bs4: BeautifulSoup이라는 클래스를 포함한 라이브러리로, 가져온 HTML 데이터를 파싱하고 원하는 정보를 추출하는 데 사용됩니다.

따라서, 크롤링 작업을 위해 두 개의 라이브러리를 사용해야 합니다. 하나는 웹 페이지를 가져오는 역할을 하고, 다른 하나는 가져온 페이지에서 원하는 데이터를 추출하는 역할을 합니다.

Q2: 처음 import는 라이브러리를 가져왔는데 왜 다음 import에서는 뷰티플 솦 클래스를 가져올까요? 그냥 코드 쓰는 방식을 외워야 하나요?

- import의 사용 방식은 각 라이브러리의 구조와 개발자의 필요에 따라 달라집니다.

- import requestsrequests 라이브러리 전체를 가져오는 것입니다. 이 경우 requests.get()와 같은 방식으로 함수들을 사용할 수 있습니다.

- from bs4 import BeautifulSoupbs4 라이브러리에서 BeautifulSoup 클래스만 가져오는 것입니다. 이 클래스는 HTML 문서를 파싱하고 탐색하기 위해 자주 사용되기 때문에 이렇게 가져옵니다.

이 방식은 Python의 모듈과 패키지 구조에 대한 이해를 바탕으로 결정됩니다. 일반적으로는 필요한 부분만 가져와서 코드의 가독성을 높이고, 메모리 사용을 줄이기 위해 이렇게 사용합니다.

코드를 외우기보다는, 각 라이브러리의 문서와 예제를 통해 어떤 상황에서 어떻게 사용하는지 이해하는 것이 좋습니다. 이렇게 하면 비슷한 작업을 할 때 자연스럽게 적용할 수 있습니다.

 

감사합니다.

잔재미코딩 드림

제갈PM님의 프로필 이미지

작성한 질문수

질문하기