2025-02-10T04:38:26

This commit is contained in:
2025-02-10 04:38:26 +09:00
parent df92a31bc8
commit ba377ad56d

View File

@@ -25,7 +25,8 @@
* CSS 선택자 기반의 HTML/XML 파싱 라이브러리: Beautiful Soup과 유사하지만 더욱 강력한 기능을 제공합니다. * CSS 선택자 기반의 HTML/XML 파싱 라이브러리: Beautiful Soup과 유사하지만 더욱 강력한 기능을 제공합니다.
## Beautiful Soup ## Beautiful Soup
Beautiful Soup은 파이썬에서 HTML 및 XML 문서를 파싱하고 처리하기 위한 파서 라이브러리입니다. 웹 크롤링, 데이터 추출 등 다양한 작업에 활용되며, 복잡한 웹 페이지 구조를 쉽게 분석하고 원하는 정보를 추출할 수 있도록 도와줍니다. Beautiful Soup은 파이썬에서 HTML 및 XML 문서를 파싱하고 처리하기 위한 파서 라이브러리입니다.
웹 크롤링, 데이터 추출 등 다양한 작업에 활용되며, 복잡한 웹 페이지 구조를 쉽게 분석하고 원하는 정보를 추출할 수 있도록 도와줍니다.
```bash ```bash
pip install beautifulsoup4 pip install beautifulsoup4
@@ -51,6 +52,7 @@ links = soup.find_all('a')
for link in links: for link in links:
print(link.get('href')) print(link.get('href'))
``` ```
### 주요 메서드 ### 주요 메서드
* select(): CSS 선택자를 사용하여 요소를 찾아 리스트로 반환합니다. * select(): CSS 선택자를 사용하여 요소를 찾아 리스트로 반환합니다.
* select_one(): CSS 선택자를 사용하여 요소를 찾습니다. * select_one(): CSS 선택자를 사용하여 요소를 찾습니다.
@@ -59,15 +61,37 @@ for link in links:
* get_text(): 태그 내부의 텍스트를 추출합니다. * get_text(): 태그 내부의 텍스트를 추출합니다.
* get(): 태그의 속성 값을 가져옵니다. * get(): 태그의 속성 값을 가져옵니다.
BeautifulSoup 객체를 사용하여 다양한 방법으로 원하는 요소를 검색할 수 있습니다.
```python ```python
# 모든 'a' 태그 찾기 title = soup.find("title") # 첫 번째 title 태그 검색
links = soup.find_all('a') h1 = soup.find("h1") # 첫 번째 h1 태그 검색
# id가 'my-title'인 태그 찾기 titles = soup.find_all("title") # 모든 title 태그 검색
title = soup.find(id='my-title') h1s = soup.find_all("h1") # 모든 h1 태그 검색
# class가 'product'인 모든 div 태그 찾기 div = soup.find("div", {"id": "my-div"}) # id가 "my-div"인 div 태그 검색
products = soup.find_all('div', class_='product') a = soup.find("a", {"href": "/product/1"}) # href가 "/product/1"인 a 태그 검색
divs = soup.find_all("div", {"class": "item"}) # class가 "item"인 모든 div 태그 검색
as = soup.find_all("a", {"target": "_blank"}) # target이 "_blank"인 모든 a 태그 검색
title = soup.select_one("title") # 첫 번째 title 태그 검색
h1 = soup.select_one("h1") # 첫 번째 h1 태그 검색
titles = soup.select("title") # 모든 title 태그 검색
h1s = soup.select("h1") # 모든 h1 태그 검색
item = soup.select_one("#my-div") # id가 "my-div"인 요소 검색
items = soup.select(".item") # class가 "item"인 모든 요소 검색
```
검색된 요소에서 텍스트, 속성 값 등을 추출할 수 있습니다.
```python
title_text = title.text # title 태그의 텍스트 내용 추출
h1_text = h1.get_text() # h1 태그의 텍스트 내용 추출
href = a["href"] # a 태그의 href 속성 값 추출
target = a.get("target") # a 태그의 target 속성 값 추출
``` ```
### 팁 ### 팁