cs/크롤링
[크롤링] 네이버 홈화면의 메뉴를 가져와보자
신_이나
2023. 3. 13. 16:19
! 새롭게 알게 된 점 !
보통 이런 형식으로 웹의 트리가 쌓여있다는 점 책에서 이런 것도 안알려주구 ㅠ
<html>
<div>
<ul>
<li>
<a>
<span>
- 네이버 홈화면의 메뉴를 가져와보자
여기서 초록색 부분!
네이버의 웹소스는 이렇게 구성되어 있다. 'ul' 에서 각 'li' 들에 메뉴 이름이 쓰여있었다.
우선 'ul'에서 'li' 소스 들을 뽑아 그 안에서 a 태그들의 text 를 뽑아주도록 하겠다.
<완성 코드>
from urllib.request import urlopen
from bs4 import BeautifulSoup
html = urlopen('https://www.naver.com')
bs = BeautifulSoup(html, 'html.parser')
ul = bs.find('ul',{'class' : 'list_nav'})
#print(ul)
lis = ul.findAll('li')
#print(lis)
for li in lis:
a_tag=li.find('a')
print(a_tag.text)
ul = bs.find('ul',{'class' : 'list_nav'})
#print(ul)
=> ul을 찾아주는 코드
lis = ul.findAll('li')
#print(lis)
=> ul 안에 li 들을 lis 안에 저장해주었다.
for li in lis:
a_tag=li.find('a')
print(a_tag.text)
=> lis 안 li 들을 하나 하나 뽑으며 a태그의 text 를 출력하였다.
<결과>