5. CSS 선택기를 사용하여 태그 찾기


1. 선택, 하나를 선택 기능 사용

  • 선택: 조건을 충족하는 모든 요소를 ​​찾습니다.

  • select_one : 조건을 만족하는 첫 번째 요소를 찾습니다.

– css 선택자 사용법

  • 태그 이름 태그 찾기
  • 하위 태그 찾기 – 하위 관계(태그 태그)
  • 하위 태그 찾기 – 직계 하위 관계(태그 > 태그)
  • ID 찾기 #id
  • class.class 찾기
  • 조회 속성 값(이름 = ‘테스트’)
    • 조회 특성 값 접두사(이름 ^=’test’)
    • 조회 속성 값 접미사(이름 $=’test’)
    • 속성 값 하위 문자열 찾기(이름 *=’test’)
  • n번째 자식 태그 찾기: nth-child(n)


기사 태그가 있는 개발자 도구에서 기사의 전체 텍스트를 봅니다.

ID는 mArticle입니다.

select 함수로 mArticle 태그를 호출해 봅시다.


내가 원하는 텍스트 외에도 속성 코드 등 다양한 코드가 포함되어 있습니다.

개발자 도구를 확인해보면 기사의 내용이 mArticle 태그의 하위 태그인 p 태그에 집중되어 있는 것을 볼 수 있습니다.


이전에 배운 기능을 사용하려면 div 태그 안의 p 태그추출해보도록 하겠습니다

arti = soup.select('div.article_view p')

arti


div 태그도착하다 article_view 클래스도착하다 p 태그로 선택당신이 할 경우 좁은 범위확인할 수 있습니다.

나우 아티 라벨 get_text() 함수사용한 값만 가져오기 해협넣어 보자

contents=""
for text in arti:
    contents += text.get_text()

contents


충분히!

– 선택 기능 적용

기능 선택다양한 용도로 사용할 수 있습니다.

우수한 p 태그선택하다

soup.select('#mArticle p')

‘#클래스 이름 태그 이름’ 쓸 수 있습니다 (간격)

에 추가

soup.select('h3.tit_view')

(‘태그명. 클래스명’) 이것도 가능합니다.

다른 방식으로는

soup.select('h3(class= "tit_view")')

첫 번째 방법은 지름길이라고 생각하시면 됩니다.

(출력은 동일)

soup.select('.tit_view')

클래스 이름두번째 tit_view를 사용하여 모든 콘텐츠 선택할수있다.

soup.select('h3(class^="tit_b")')

클래스^ 클래스를 찾으면 클래스는 “~”로 시작합니다.

찾다

soup.select('h3(class$="view")')

클래스 $ 클래스를 찾으면 클래스는 “~”로 끝납니다.

찾다

soup.select('h3(class*="_")')

수업* 클래스를 찾으면 시작과 끝을 가리지 않고 “~”부분적으로 포함 수업찾다

soup.select('span.txt_info')

스팬 태그도착하다 문자 메세지 클래스로 무언가를 인쇄해 봅시다.


조건을 만족하는 두 개의 출력이 있는 것 같습니다.

이것

soup.select('span.txt_info')(0)


같은 방법으로 원하는 것을 인쇄할 수 있습니다.

soup.select('span.txt_info:nth-child(1)')


: n번째 자식(n) 출력을 사용할 수도 있습니다.

그러나 첫 번째 방법은 인쇄 태그 값 str그러나 두 번째 방법은 ResultSet으로 나열다음과 같이 출력