아이디와 비밀번호는 개인정보 이므로 가렸습니다.
052 에러가 발생하여 네이버 document 에 들어가 관련 에러코드를 확인하려 하였다.
document 주소 : https://developers.naver.com/docs/serviceapi/search/kin/kin.md#%EC%A7%80%EC%8B%9DiN
에러코드 번호는 찾을 수 없었다.
다만 내 코드가 뭐가 잘못되었는지 유심히 보고, 네이버 document를 유심히 본 결과 답을 찾을 수 있었다.
검색 엔진이 v1인데 오타로 vi 로 작성하여 발생한 문제였다.
이제 보니 에러코드에도 'vi' 라고 적혀있다.
검색 엔진을 틀리는건 종종 발생한 에러였다.
구글링하여 과거 검색 엔진 사용 코드를 검색하다보면 v3로 많이들 적어놓았는데.
지금은 v3가 없어졌기 때문이다.
document 의 유용함을 새삼 깨닫게 되는 경험이었다.
고친 코드 ( 지식인에서 파이썬을 검색해서 결과를 10개 가져온다. )
(start = 10, disp = 10 )
import urllib.request
import json
import datetime
def gen_search_url(api_node, search_text, start_num,disp_num):
base ="https://openapi.naver.com/vi/search"
node = "/"+ api_node + ".json"
param_query = "?query="+urllib.parse.quote(search_text)
param_start = "&start="+str(start_num)
param_disp = "&display="+str(disp_num)
return base + node + param_query + param_start + param_disp
def get_result_onpage(url):
request = urllib.request.Request(url)
request.add_header('X-Naver-Client-Id',client_id)
request.add_header('X-Naver-Client-Secret',client_secret)
response = urllib.request.urlopen(request)
print('[%s] Url Request Success' % datetime.datetime.now())
return json.loads(response.read().decode('utf-8'))
# 지식인에다가 검사
url = gen_search_url('kin','파이썬',10,10)
one_result = get_result_onpage(url)
one_result
[ 네이버 API 관련 알아야할 필수 정보 ]
- 검색 결과는 한번 검색에 1000건으로 제한된다.
- 검색 api, 일일 호출 허용량은 무료 기준으로 2,5000 회이다.
검색결과가 한번 검색에 1000건 이기 때문에 특정 검색어의 기간에 따른 모든 데이터를 가져오기 위해서는 세부 검색을 최대한 잘 활용해야 했었다.
출간 시작일과 출간 종료일, 카테고리 검색 등이 막혔기 때문에 혹시라도 구글링 해서 과거 코드를 복사 붙여넣기 하려는 코더 분들은 참고하셔야겠다.
- 갑자기 코드가 작동이 안되고, Document 를 봐도 모르겠다면 공지사항을 확인하도록 하자.
링크 : https://developers.naver.com/notice/
네이버 개발자 포럼을 돌아다니다 보면 파파고 번역 api를 쓰다가 고통받는 분들이 많이들 보인다.
10,000글자/일 이라고 적혀있는걸 보고 검색 api 때 처럼 10,000 번 조회 해도 되겠지? 라고 생각하시는 분들이 많은 것 같던데 이게 횟수가 아니라 글자여서, 아마도 띄어쓰기를 포함한 byte 기준일 것이다. 참고 하셔야할 것 같다.
여기 링크에 네이버 api 별 호출 제한이 적혀있다.
https://developers.naver.com/products/intro/plan/plan.md
'근황 토크 및 자유게시판' 카테고리의 다른 글
[plt.imshow] RGB Range Error (0) | 2022.08.26 |
---|---|
[konlpy] 자연어 처리 환경 설치 (0) | 2022.08.21 |
'float' object has no attribute 'replace' (pandas) (0) | 2022.08.20 |
[The Art Of ML] 데이터 기반의 문제 해결 (0) | 2022.08.07 |
[스쿨선발대] 데이터 사이언스 스쿨 세 달 후기 (0) | 2022.07.30 |