728x90
반응형
자, 지난 시간에 이어서 웹크롤링을 계속 해 보겠습니다.
일단 테슬라 관련 기사 헤드라인만 가지고 오고 싶다면 어떻게 해야 할까요?
이 웹사이트 주소를 기억하세요! 이렇게 보입니다.
여기서 F12를 누르면 웹페이지 코딩을 확인할 수 있습니다.
그럼 일단 구글의 테슬라 뉴스 웹페이지를 가져와 보겠습니다.
import requests
response = requests.get("https://www.google.com/search?q=%ED%85%8C%EC%8A%AC%EB%9D%BC&rlz=1C1FKPE_koKR984KR984&sxsrf=ALiCzsY6_TwSATDNQ13gnCtGU8KgtUdJiQ:1653212090837&source=lnms&tbm=nws&sa=X&ved=2ahUKEwialKb75vL3AhWhmlYBHdzmCuUQ_AUoAXoECAMQAw&biw=1920&bih=937&dpr=1")
html = response.text
print(html)
웹페이지 코딩 그대로 아래 창(터미널창이라고 부릅니다)에 뜨는 게 보입니다.
이제 진도를 더 나가보겠습니다. 여기서 고유의 이름값이 "도구"를 출력해 보겠습니다.
고유의 이름값은 id로 표시가 됩니다.
도구의 id는 hdtb-tls입니다.
프로그래밍 언어는 이렇습니다.
import requests
from bs4 import BeautifulSoup
response = requests.get("https://www.google.com/search?q=%ED%85%8C%EC%8A%AC%EB%9D%BC&rlz=1C1FKPE_koKR984KR984&sxsrf=ALiCzsY6_TwSATDNQ13gnCtGU8KgtUdJiQ:1653212090837&source=lnms&tbm=nws&sa=X&ved=2ahUKEwialKb75vL3AhWhmlYBHdzmCuUQ_AUoAXoECAMQAw&biw=1920&bih=937&dpr=1")
html = response.text
soup = BeautifulSoup(html, 'html.parser')
word = soup.select('#hdtb-tls')
print(word)
어? 아무 것도 안 보이네?
아닙니다. 오류가 있는 게 아니고, 아무 것도 없습니다.
[]
결과값이 비어 있다는 말입니다. 잘 되고 있는 것이니 너무 걱정 마세요!
import requests
from bs4 import BeautifulSoup
response = requests.get("https://www.google.com/search?q=%ED%85%8C%EC%8A%AC%EB%9D%BC&rlz=1C1FKPE_koKR984KR984&sxsrf=ALiCzsY6_TwSATDNQ13gnCtGU8KgtUdJiQ:1653212090837&source=lnms&tbm=nws&sa=X&ved=2ahUKEwialKb75vL3AhWhmlYBHdzmCuUQ_AUoAXoECAMQAw&biw=1920&bih=937&dpr=1")
html = response.text
soup = BeautifulSoup(html, 'html.parser')
title = soup.select(".mCBkyc y355M JQe2Ld nDgy9d")
print(title)
근데 얘도 결과값이 오류가 아닌 빈 리스트가 나옵니다.
[]
이상하죠? 그래서 다움 브런치로 가서 해보겠습니다.
사이트 주소는 여기입니다.
https://search.daum.net/search?w=brunch&nil_search=btn&DA=NTB&enc=utf8&q=%ED%85%8C%EC%8A%AC%EB%9D%BC
import requests
from bs4 import BeautifulSoup
response = requests.get("https://search.daum.net/search?w=brunch&nil_search=btn&DA=NTB&enc=utf8&q=%ED%85%8C%EC%8A%AC%EB%9D%BC")
html = response.text
soup = BeautifulSoup(html, 'html.parser')
title = soup.select('.link_brunch')
print(title)
이걸 하면 됩니다!! 아까는 사이트가 좀 이상했던 것 같습니다!
아래 터미널 창에 보면 브런치 헤드라인 제목들이 쫙 보이시죠?
다음 시간에는 제목만 보일 수 있도록 조치해보겠습니다!
728x90
반응형
'파이썬 배우기' 카테고리의 다른 글
파이썬으로 웹크롤링 해 보기!!! 4편 (ft. 네이버 증권 정보 가져오기) (0) | 2022.05.24 |
---|---|
파이썬으로 웹크롤링 해 보기!!! 3편 (0) | 2022.05.23 |
파이썬으로 웹크롤링 해 보기!!! (ft. pip 업그레이드? python -m pip install --upgrade pip? 조치방법) (0) | 2022.05.22 |
파이썬으로 여러 개의 별 찍는 방법 (ft. 파이썬 반복문 for) (0) | 2022.05.15 |
파이썬 설치하기 1편 (0) | 2022.05.08 |
댓글