인프런 영문 브랜드 로고
인프런 영문 브랜드 로고

인프런 커뮤니티 질문&답변

이승현님의 프로필 이미지
이승현

작성한 질문수

[리뉴얼] 파이썬입문과 크롤링기초 부트캠프 [파이썬, 웹, 데이터 이해 기본까지] (업데이트)

직접 작성해보며 익숙해지기: 크롤링과 전처리 이해하기 (업데이트)

안녕하세요! 질문드립니다.

작성

·

184

0

현재 네이버 국내증시(https://finance.naver.com/sise/)에서

"상승, 하락"파트에 대한 HTML코드는

<img height="6" width="7" alt="하락"src="https://ssl.pstatic.net/static/nfinance/ico_down.gif">

과 같이 나와있는데요,

이렇게 되면 꺽쇄안에 있는 저 "하락"을 가져와야됩니다.

이 상태에서는 

import requests

from bs4 import BeautifulSoup

res = requests.get('https://finance.naver.com/sise/')

soup = BeautifulSoup(res.content, 'html.parser')

data = soup.select("#popularItemList > li ")

for item in data:

    print (item.find('img').get_text())

 

이 코드를 사용해도 에러가 뜨고 "상승", "하락"에 대한 데이터를 수집하지 못합니다.

 

이렇게 꺽쇠<  (여기) > 안에 있는 정보는 어떻게 뽑아올 수 있나요?

답변 1

0

안녕하세요. 말씀하신 부분이 정확히 이해는 안가는데요. 하락 과 상승 이 부분만 따로 뽑아보신다 라는 의미로 이해를 하겠습니다. 이 때에는 영상의 코드를 기반으로 다음과 같이 뽑아보시면 될 것 같습니다. 이외의 img? 이 부분은 개별적으로 특별한 코드를 추가로 뽑아보고 싶으신 것 같아서, 이 부분의 개별적인 코드는 저도 무엇인지 정확하게는 잘 모르겠어서요. 직접 코드를 작성해봐야 할 것 같아요. 보통은 각 태그의 특정 attribute 값은 해당 객체['해당 attribute 이름'] 으로 사전처럼 접근하는 방법도 있기는 합니다. 이 부분은 이런 링크등으로 한번 참고해보시면 어떨까요?

https://hogni.tistory.com/115

https://cosmosproject.tistory.com/273

-------

import requests

from bs4 import BeautifulSoup

res = requests.get('https://finance.naver.com/sise/')

soup = BeautifulSoup(res.content, 'html.parser')

data = soup.select("#popularItemList > li  span.blind")

for item in data:

    print (item.get_text())

이승현님의 프로필 이미지
이승현

작성한 질문수

질문하기