select 와 select_one 의 차이점에 대해서는 이전에 알아보았습니다.
arvigoes.tistory.com/188?category=825629
오늘은 select 의 결과로 리턴 되는 bs4.elementResultSet 에 대해 알아보고자 합니다.
select 의 결과가 몇개인지를 확인 하는 방법입니다.
# select & select_one 사용법
from bs4 import BeautifulSoup
r = requests.get("크롤링 웹 페이지 주소")
soup = BeautifulSoup(r.text, 'html.parser')
#table class ="board_list_table"
items = soup.select('.table_body')
len(items) #요소의 개수
len 함수를 이용하여 요소의 개수를 확인합니다.
샘플을 만들어보려다 귀찮아서 한번 select 를 웹페이지에 테스트 해 본 결과 입니다. (내용은 삭제!)
결과가 19개가 나왔네요
len(items) 의 결과 또한 19로 나옵니다.
전체를 순회 해 보도록 하겠습니다.
# select & select_one 사용법
from bs4 import BeautifulSoup
r = requests.get("크롤링 웹 페이지 주소")
soup = BeautifulSoup(r.text, 'html.parser')
#table class ="board_list_table"
items = soup.select('.table_body')
len(items) #요소의 개수
for item in items :
titleTag = item.slect_one('a.title')
for 대신 while 을 사용해도 상관 없습니다.
# select & select_one 사용법
from bs4 import BeautifulSoup
r = requests.get("크롤링 웹 페이지 주소")
soup = BeautifulSoup(r.text, 'html.parser')
#table class ="board_list_table"
items = soup.select('.table_body')
count = len(items) #요소의 개수
idx = 0
while idx < count :
titleTag = items[idx].slect_one('a.title')
++idx
동일한 결과입니다. 저는 특별히 while 을 사용해야할 경우는 잘 없더라구요
resultSet은 list 와 성격이 비슷합니다.
크게 어려워 할 필요없이 list<bs4.element.Tag > 라고 생각해도 될 것 같네요
'Python > crawling' 카테고리의 다른 글
BeautifulSoup select (0) | 2020.11.29 |
---|---|
pycharm selenium import (0) | 2020.11.22 |