여행사 홈페이지 URL 자동·수동 수집(api/travel-agency-collect-websites.php)에 사용합니다. 문서 버전 2026-04-13
naver-search-config.local.php 내려받기 (또는 api/naver-search-config.example.php를 복사해 메모장으로 직접 편집)api/naver-search-config.local.php에 업로드 (덮어쓰기)아래는 네이버 쪽 화면을 따라가는 상세 단계입니다. 화면 이름은 개편에 따라 조금 다를 수 있습니다.
OMNI-NEXUS KCTA TOUR 여행사 홈페이지 수집 등 구분 가능한 이름을 입력합니다.https://ikcta.or.kr (필요 시 https://www.ikcta.or.kr)를 넣습니다. 요구 항목이 있으면 안내에 맞게 작성합니다.api/naver-search-config.local.php 안의 naver_client_id·naver_client_secret과 한 쌍으로 정확히 같아야 합니다. Secret이 가려져 있거나 오래됐으면 재발급 후 새 문자열 전체를 복사해 파일을 고치고 FTP로 다시 올립니다.max 건수·실행 주기를 조절하세요.웹문서 검색의 **정식 경로**는 아래와 같습니다. 문서에 “/v1/search/웹문서”처럼 한글로만 적힌 경우가 있어도, 실제 주소는 **영문 코드 webkr** 입니다.
GET https://openapi.naver.com/v1/search/webkr.json?query=테스트&display=10&start=1
검색어(UTF-8): 한글 등은 그대로 URL에 붙이면 안 되고, UTF-8 기준으로 퍼센트 인코딩한 값을 query=에 넣습니다. (예: PHP rawurlencode(), Python urllib.parse.quote().) 서버 수집 스크립트는 이미 이렇게 호출합니다.
헤더: X-Naver-Client-Id, X-Naver-Client-Secret (값은 앱 상세에 표시된 것과 동일 앱이어야 합니다.)
경로는 모두 /v1/search/{코드}.json 형태입니다. 여행사 URL 수집에는 webkr만 필요합니다.
| 검색 대상 | 코드 |
|---|---|
| 블로그 | blog |
| 뉴스 | news |
| 책 | book |
| 백과사전 | encyc |
| 카페글 | cafearticle |
| 지식iN | kin |
| 웹문서 | webkr — OMNI-NEXUS KCTA TOUR 홈페이지 수집에 사용 |
| 이미지 | image |
| 쇼핑 | shop |
| 전문자료 | doc |
| 성인검색어 판별 | adult (검색 종류와 용도가 다름) |
| 오타 변환 | errata (검색 종류와 용도가 다름) |
이미지 검색 API(image)에만 해당하는 옵션입니다. 웹문서(webkr)·여행사 홈페이지 수집과는 무관합니다.
all(전체), large(큰 사이즈), medium(중간), small(작은 사이즈) — 네이버 문서의 파라미터 이름에 따름sort (참고)일부 검색 API는 결과 정렬을 sort=sim(유사도순), sort=date(날짜순) 등으로 바꿀 수 있습니다.
blog, news, book, cafearticle, kin, image, shopencyc, webkr, doc, adult, errata — 여행사 홈페이지 수집에 쓰는 웹문서(webkr)는 sort를 쓰지 않습니다. OMNI-NEXUS KCTA TOUR 서버·PC 스크립트도 sort 파라미터를 붙이지 않습니다.asc(가격 오름차순), dsc(가격 내림차순)count(판매량순)webkr.json이 아니라 웹문서 등 **잘못된 경로**이면 SE05가 납니다. 위 정식 URL을 사용하세요.네이버가 Client ID·Client Secret 조합을 인정하지 못할 때 나는 메시지입니다. 서버 URL이나 OMNI-NEXUS KCTA TOUR 코드 문제가 아니라, 개발자센터에 등록한 키 값을 다시 확인하는 단계입니다.
naver-search-config.local.php는 반드시 새 Secret으로 다시 저장·FTP 업로드합니다.naver-search-config.local.php만 서버(FTP)에 두세요. 이 파일은 Git에 커밋하지 않습니다.
.local.php 확장자)'naver_client_id' => '여기에_Client_ID''naver_client_secret' => '여기에_Client_Secret'bot_shared_secret 항목이 있으면 삭제하거나 무시해도 됩니다.no_config 또는 empty_keys류 메시지가 표시될 수 있습니다. 파일 경로·따옴표·PHP 문법을 다시 확인합니다.naver-search-config.local.php와 맞추고, API 설정에서 검색 → 웹문서 검색이 사용(ON)인지 확인한 뒤 Secret 재발급·FTP 반영을 검토하세요.
scripts/naver-search.env(예시: scripts/naver-search.env.example)에 NAVER_CLIENT_ID, NAVER_CLIENT_SECRET을 넣은 뒤 collect-travel-agency-websites.py를 실행합니다. 서버 PHP 설정과는 별개입니다.