어디서 정보를 받아오는건 같은데 영... 아리까리해서 정리해봤다.
API와 같이 정형화된 정보를 불러올 때 사용
요청과 응답 등의 요소를 JavaScript에서 접근하고 조작.브라우저 내장 함수.
짧은 코드로 요청을 보내고(GET), 받아 올 수 있음(POST).
< fetch 기본 골격 >
<head >
<meta charset ="UTF-8 ">
<meta name ="viewport " content ="width=device-width, initial-scale=1.0 ">
<title >Fetch 시작하기 </title >
<script src ="https://ajax.googleapis.com/ajax/libs/jquery/3.6.4/jquery.min.js "></script >
</head >
<body >
<h1 >Fetch 연습을 위한 페이지 </h1 >
<script >
fetch ("여기에 URL을 입력 ") // 이 URL로 웹 통신을 요청한다. 괄호 안에 다른 것이 없다면 GET!
.then (res =>res .json ()) // 통신 요청을 받은 데이터는 res라는 이름으로 JSON화 한다
.then (data =>{
console .log (data ) // 개발자 도구에 찍어보기
}) // JSON 형태로 바뀐 데이터를 data라는 이름으로 붙여 사용한다
</script >
</body >
</html >
requests: 크롤링 시 사용. 파이썬 라이브러리
웹 페이지에 접속하여 데이터를 가져오는 도구
bs4 (beatifulSoup) : 크롤링 시 사용. 파이썬 라이브러리
웹 페이지의 HTML 구조를 분석하고, 정보를 추출하는 도구
둘이 같이 사용하여 API와같이 정형화되지 않은 사이트에서 정보를 긁어오는데 사용된다.
< requests, bs4 기본 골격 >
from bs4 import BeautifulSoup
import requests
# bs4 시작코드
'''
스크래핑 하고 싶은 주소를 url에 넣어주세요
'''
url ="https://www.melon.com/chart/"
headers ={'User-Agent ':'Mozilla/5.0 (Windows NT 10.0; Win64; x64)AppleWebKit/537.36 (KHTML, like Gecko) Chrome/73.0.3683.86 Safari/537.36 '}
data =requests .get (url ,headers =headers )
soup =BeautifulSoup (data .text ,'html.parser ')
#실행 시에는 터미널에 python 파일명.py (엔터)하면 됨.