inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

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

패턴으로 실습하며 익히기: 네이버 Open API 로 크롤링하기

json() 함수와 BeautifulSoup 의 차이

532

장정욱

작성한 질문수 10

0

requests.get() 메소드를 통해 얻은 res 라는 변수를

res.json() 메소드를 이용해 얻은 리턴값과 BeatifulSoup(res.content, 'html.parser') 를 통해 얻은 값은 어떤 차이가 있을까요?

코딩을 통해 직접 도출해본 결과 값은 비슷하게 나오는 것 같은데, 이전 강의까지는 계속 BeatifulSoup를 이용하다가 이번 강의에서부터는 json()을 이용하는 이유는 무엇인가요?

python 웹-크롤링

답변 1

1

잔재미코딩 DaveLee

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

res.json() 메소드와 BeautifulSoup(res.content, 'html.parser')를 사용하는 것 사이에는 꽤 큰 차이가 있습니다. 각각의 메소드는 다른 유형의 데이터를 처리하고, 서로 다른 목적으로 사용됩니다.

1. `res.json()` 메소드:

- 용도: 이 메소드는 주로 JSON 형식의 데이터를 처리할 때 사용됩니다. 웹 API로부터 데이터를 가져올 때 많이 사용되죠.

- 작동 방식: res.json()은 응답(res)의 본문을 JSON 형태로 파싱합니다. JSON은 'JavaScript Object Notation'의 약자로, 키-값 쌍으로 이루어진 데이터 형식입니다.

- 사용 예: RESTful API에서 데이터를 요청할 때 주로 JSON 형식으로 데이터를 받습니다. 이러한 경우, res.json()을 사용하여 데이터를 쉽게 다룰 수 있습니다.

2. `BeautifulSoup(res.content, 'html.parser')`:

- 용도: 이 방법은 HTML 또는 XML 문서를 파싱할 때 사용됩니다. 주로 웹 스크래핑에 사용되며, 웹 페이지의 내용을 분석하고 구조화하는 데 유용합니다.

- 작동 방식: BeautifulSoupres.content를 가져와 HTML 또는 XML 문서를 구문 분석하고, 태그나 클래스 등으로 데이터를 쉽게 검색하고 조작할 수 있는 객체로 변환합니다.

- 사용 예: 웹사이트의 특정 정보를 추출하거나 웹 페이지의 구조를 분석할 때 사용됩니다.

 

강의에서 BeautifulSoup에서 json()으로 변경한 이유는 처리해야 하는 데이터의 유형이 바뀌었기 때문입니다. 예를 들어, 처음에는 웹 페이지의 HTML 내용을 분석하는 것이 목표였지만, 나중에는 JSON 형식의 API 응답을 처리해야 할 수도 있습니다. JSON 데이터는 구조화되어 있고, 키-값 쌍으로 데이터에 접근하기 쉬워, API를 통해 데이터를 주고받는 현대 웹 애플리케이션에 매우 적합합니다.

결론적으로, 두 메소드는 서로 다른 유형의 데이터를 처리하며, 사용 목적에 따라 선택해야 합니다. res.json()은 구조화된 JSON 데이터에, BeautifulSoup은 HTML 또는 XML 문서 분석에 적합합니다.

 

감사합니다.

exercise 20. 데이터 구조(리스트)

0

4

0

65강 소리

0

30

1

섹션 5 CSS selector사용해서 클로링하기2의 커리큘럼 일정 부재?

0

33

2

크롤링, 영상을 따라해도 제미나에게 물어봐도 안되요

0

45

1

정규표현식 및 여러 코드 꼭 외워야 하나요?

0

52

1

리스트 함수형도 정수 데이터 받을 수 있나요?

0

56

1

크롤링 관련 질문

0

72

1

문제 답이 없는 버전은 없나요?

0

87

1

requests, BeautifulSoup 임포트 부분에 대해 문의드립니다.

0

94

1

업데이트 강의

0

113

2

선생님 강의중에서 sqlite3 강의를 제공한 강의가 있나요?

0

136

2

연습용 예제 파일

0

83

1

lxml 관련 오류

0

115

1

SAVE Request 창 띄우는 법

0

101

1

포스트맨 사용법이 바뀌어서 강의를 따라가지 못하겠습니다. 2

0

88

1

포스트맨 사용법이 바뀌어서 강의를 따라가지 못하겠습니다.

0

107

1

예제 2, 4, 6에 대한 풀이 방식 질문.

0

99

1

문제 파일

0

91

1

pdf 파일 내 코드 복붙시 공백

0

304

1

데이터 저장 강좌 문의 건

0

106

1

" " 와 ' '의 차이를 알고 싶습니다

0

255

1

Exercise 22. 문자열 다루기 (strip)

0

148

1

list함수로 리스트 선언하면 실패하는데 이유는 무엇입니까?

0

199

1

셀 삽입후 바로 기입이 가능합니까?

0

151

2