HTTP 통신과 라이브러리
HTTP통신으로 get과 post등 여러 가지 요청을 보낼 수 있다.
get은 웹사이트에서 정보를 얻어올 때 사용하고, post는 웹사이트에게 정보를 제공하고 제공한 정보에 따라 응답을 확인하는 과정이다. (회원가입과 유사하다)
파이썬으로 웹 크롤링을 진행할 때 위의 HTTP통신을 수행하기 위해 외장 라이브러리인 Requests를 사용한다.
import requests
response = requests.get('http://www.naver.com')
html = response.text
print(html)
requests.get메서드로 특정 URL을 입력하면, 입력한 URL의 HTML코드를 Python객체로 받아온다.
가져온 정보를 분석하고 사용하기 편한 형태로 가공하기 위해 BeautifulSoup라이브러리를 사용한다.
BeautifulSoup라이브러리로 HTML정보를 분석하고 필요한 부분을 추출해서 활용할 수 있다.
import requests
from bs4 import BeautifulSoup
response = requests.get('http://www.naver.com')
html = response.text
soup = BeautifulSoup(html, 'html.parser')
word = soup.select_one("#NM_set_home_btn")
print(word.text)
BeautifulSoup메서드는 html정보와 html분석해주는 도구를 인자로 받는다.
여기서 html.parser는 분석해주는 도구를 의미하고, 파이썬의 내장 클래스이다.
웹사이트에 사용된 HTML태그를 입력해 해당 태그에 대한 정보를 추출할 수 있다.
미루어 짐작할 수 있겠지만, 웹 사이트의 정보를 추출은 해당 사이트의 HTML을 기반으로 진행된다.
HTML에 대한 이해가 필수적이고, 해당 사이트의 HTML의 구조가 변하면 이전에 만들어 둔 코드도 구조에 따라 바꿔야 한다.
반응형
'Web > Web Scraping' 카테고리의 다른 글
크롤링에서 POST 요청이 필요한 경우 (0) | 2022.09.24 |
---|---|
네이버 금융 크롤링 (1) | 2022.09.24 |
이미지 크롤링 (2) | 2022.09.21 |
쿠팡 상품 크롤링 (0) | 2022.09.20 |
네이버 뉴스 크롤링 (0) | 2022.09.18 |
댓글
이 글 공유하기
다른 글
-
네이버 금융 크롤링
네이버 금융 크롤링
2022.09.24 -
이미지 크롤링
이미지 크롤링
2022.09.21 -
쿠팡 상품 크롤링
쿠팡 상품 크롤링
2022.09.20 -
네이버 뉴스 크롤링
네이버 뉴스 크롤링
2022.09.18