requests 라이브러리 사용법
# 라이브러리 불러오기
import requests as req
# 서버에게 데이터를 요청 및 응답받기 위한 라이브러리
res = req.get('https://www.naver.com/')
# Response [200]번대 : 성공적으로 요청 및 응답을 받았다는 의미
# Response [400]번대 : 클라이언트(요청) 부분에서 오류가 발생했을 때
# Response [500]번대 : 서버(응답) 쪽에서 문제가 발생했을 때
res.text
BeautifulSoup 라이브러리 불러오기
from bs4 import BeautifulSoup as bs
# 컴퓨터가 이해할 수 있는 객체로 변경해주는 라이브러리
res.text
# bs(parsing할 html 문서, 'parsing할 방법')
# lxml : 빠르고 관대하기 때문
soup = bs(res.text, 'lxml')
soup
네이버페이지 정보를 가져와보자
- 뉴스, 카페, 블로그 등과 같은 글자를 수집해보자.
# 태그의 위치를 찾는 방법
# 1. 내가 가져오고 싶은 contents 위에 마우스 우클릭 -> 검사
# 2. 개발자모드 상단에 커서 모양 아이콘 클릭 후 가져오고 싶은 컨텐츠 클릭
# a태그 가져오는 방법
soup.select('a')
# 페이지에 있는 모든 a태그가 가져와졌다.
# a태그 중에 클래스가 nav인 애들만 데려올거야
# select : 여러가지 요소를 복수형으로 가져와준다.
soup.select('a.nav')[0]
# select_one : 여러가지 요소 중에서 첫 번째 요소만 단수형으로 가져와준다.
soup.select_one('a.nav')
soup.select('a.nav')[2].text
데이터 수집 실습
- 네이버 날씨에서 온도데이터 수집
res1 = req.get('https://search.naver.com/search.naver?where=nexearch&sm=top_sug.pre&fbm=1&acr=3&acq=%EB%84%A4%EC%9D%B4%EB%B2%84+%EB%82%A0%EC%94%A8&qdt=0&ie=utf8&query=%EB%84%A4%EC%9D%B4%EB%B2%84+%EB%82%A0%EC%94%A8')
res1.text
soup1 = bs(res1.text, 'lxml')
soup1
soup1.select('div.temperature_text')
soup1.select('div.temperature_text')[0].text
' 현재 온도9.4° '
'Web > Crawling' 카테고리의 다른 글
Gmarket 상품정보 수집 (0) | 2023.04.10 |
---|---|
한솥도시락 data 크롤링 (0) | 2023.04.09 |
selenium 라이브러리 (0) | 2023.04.09 |
웹페이지 데이터 수집 (0) | 2023.04.06 |
멜론차트 TOP100 수집하기 (0) | 2023.04.05 |
댓글