IT 꿀팁

【파이썬 Beautiful soup의 모든 메소드 정리】 (웹사이트 크롤링 html 파싱하기)

GGhool tip 1min 2024. 9. 16. 03:58
반응형

파이썬 Beautiful soup의 모든 메소드 정리
파이썬 Beautiful soup의 모든 메소드 정리

BeautifulSoup 객체에서 사용할 수 있는 주요 메소드들은 HTML 및 XML 문서를 탐색하고 파싱하는 데 유용합니다. 각각의 메소드들은 특정 태그나 요소를 찾거나 필터링하는 데 도움을 줍니다. 주요 메소드들을 설명하자면 다음과 같습니다:

1. find()

  • 특정 조건에 맞는 첫 번째 태그를 반환합니다.
예시:
python
first_link = soup.find('a')

2. find_all()

  • 조건에 맞는 모든 태그를 리스트 형태로 반환합니다.
예시:
python
all_links = soup.find_all('a')

3. select()

  • CSS 선택자를 사용하여 태그를 선택합니다.
예시:
python
코드 복사
elements = soup.select('.class-name')

4. select_one()

  • CSS 선택자를 사용하여 첫 번째로 일치하는 태그를 반환합니다.
예시:
python
element = soup.select_one('.class-name')

5. get_text()

  • 해당 태그의 모든 자손을 포함한 텍스트를 반환합니다. 여러 요소의 텍스트를 한꺼번에 추출할 수 있습니다.
  •  
예시:
python
text = soup.get_text()

6. find_parents()

  • 특정 조건에 맞는 부모 태그를 모두 반환합니다.
예시:
python
parents = tag.find_parents('div')

7. find_parent()

  • 조건에 맞는 첫 번째 부모 태그를 반환합니다.
예시:
python
parent = tag.find_parent('div')

8. find_next_sibling()

  • 현재 태그의 다음 형제 태그를 찾습니다.
예시:
python
next_sibling = tag.find_next_sibling()

9. find_previous_sibling()

  • 현재 태그의 이전 형제 태그를 찾습니다.
예시:
python
previous_sibling = tag.find_previous_sibling()

10. find_next_siblings()

  • 현재 태그의 모든 다음 형제 태그를 리스트로 반환합니다.
예시:
python
next_siblings = tag.find_next_siblings()

11. find_previous_siblings()

  • 현재 태그의 모든 이전 형제 태그를 리스트로 반환합니다.
예시:
python
previous_siblings = tag.find_previous_siblings()

12. find_all_next()

  • 현재 태그 이후의 모든 태그를 반환합니다.
예시:
python
all_next = tag.find_all_next()

13. find_all_previous()

  • 현재 태그 이전의 모든 태그를 반환합니다.
예시:
python
all_previous = tag.find_all_previous()

14. decompose()

  • 해당 태그와 그 안의 모든 자손 태그를 제거합니다.
예시:
python
tag.decompose()

15. replace_with()

  • 현재 태그를 다른 태그로 교체합니다.
예시:
python
tag.replace_with(soup.new_tag('div'))

16. attrs

  • 태그의 속성을 딕셔너리로 반환합니다.
예시:
python
attrs = tag.attrs

이 메소드들을 적절히 활용하면 BeautifulSoup을 사용하여 HTML 문서를 매우 효과적으로 탐색하고 처리할 수 있습니다.

 

반응형