#다양한 크롤링 기법 맛보기
# Open API(Rest API)란 Represenational State Transfer API, HTTP 통해 서버 제공 기능을 사용 가능
# 일반적으로 XML, JSON(JavaScript Object notation) 형태로 응답을 전달( 데이터 추출이 쉬움 )
# as-is : html
# to-be : JSON(RestAPI)
import requests
#naver open API에 대한 정보 네이버 개발자 사이트에서 등록 후, 획득 가능
client_id = 'KLJSDFk123LJSFD'
client_secret ='JKSdlfj5415'
#요청 서버
naver_open_api = 'https://openapi.naver.com/v1/search/news.json?query=갤럭시노트10'
#헤더 정보를 추가
header_params = {'X-Naver-Client-Id':client_id ,'X-Naver-Client-Secret':client_secret}
#요청
res = requests.get(naver_open_api, headers=header_params)
#요청에 대한 결과 처리
if res.status_code == 200:
#JSON 형태로 data 저장
#res.content (인코딩이 맞지 않음)
data = res.json()#data=res.text
#pprint를 사용하여 출력을 보기 쉽게 보여줌
#pprint.pprint(data)
#enumerate 를 for문에 활용 index를 활용 가능
for index, item in enumerate(data['items']):
print(index+1, item['title'],item['link'])
else:
print("Error code : ",res.status_code)