마케팅과 기술이 결합하는 시대, 앞서가는 마케터를 위한

working with python

네이버검색광고 API 다루기 (2)

python_naversearchAPI_codes

하나의 폴더에 위 사진과 같이 ad_management_sample.py 파일과 signaturehelper.py 파일을 모두 위치시킵니다. 저는 주피터노트북 환경에서 코딩을 진행하므로 파이썬 파일(ad_management_sample.py)의 샘플 코드들을 주피터노트북 파일 (ad_management_sample.ipynb)에 복사-붙여넣기하고, 주피터노트북 상에서 진행하도록 하겠습니다.

샘플코드(ad_management_sample.py) 살펴보기

샘플코드의 최상단을 살펴보면 위와 같습니다. import 키워드로 time, random, requests모듈을 불러오며, 이 때 signaturehelper모듈도 함께 불러오게 되는데 이 모듈은 같은 폴더에 위치시켰던 signaturehelper.py파일입니다. 이 파일이 코드가 실행되는 폴더(Working directory)에 위치되어 있다면 정상적으로 불러오게 됩니다.

get_header함수가 정의되어 있습니다. 샘플 코드에서 서버에 응답을 요청할 때마다 헤더를 생성해주는 역할을 합니다. 전체 샘플 코드의 중하단부를 살펴보면, 각각의 서비스를 요청할 때 사용되는 requests모듈에 headers매개변수의 값으로 사용된 것을 확인할 수 있습니다.

서비스 요청URL과 사용자 인증정보를 할당하는 코드입니다. 첫 번째 변수로 각 서비스의 URI와 합쳐 요청URL을 만드는 BASE_URL이 있습니다. 그리고 네이버 검색광고 API 다루기 1편에서 검색광고 API 사용관리화면에서 확인할 수 있었던 액세스라이선스를 API_KEY에, 비밀키를 SECRET_KEY에, CUSTOMER_ID를 CUSTMER_ID에 붙여넣기 합니다.

Adgroup 서비스 요청하기

인증정보를 입력하는 코드 아래부터는 위 코드와 같이 API가 제공하는 서비스와 서비스 요청코드가 작성되어 있습니다. 위 코드는 Adgroup 서비스 요청코드인데요, 실행하면 현재 네이버 광고 콘솔에 등록되어 있는 광고그룹을 출력해 줍니다. 이 포스팅의 과정을 순서대로 따라오셨다면 간단하게 출력할 수 있습니다(출력 결과가 길어 일부만 출력하였습니다).

Stat 서비스 요청하기

광고 지표를 확인하기 위해서는 Stat 서비스를 사용해야 합니다. 위 코드에서는 실제 샘플코드의 stat_ids 변수를 주석처리하고 변수의 값을 다르게 할당하였는데요, Stat 서비스를 요청할 때에는 위와 같이 요청할 campaign id(혹은 Ad group id, Ad keyword id, Ad id)를 입력해야 합니다.

위 코드의 마지막 줄에 있는 r.json()이 서버에서 보내준 json 포맷의 데이터를 파이썬의 딕셔너리 형태로 파싱해주므로 광고지표를 파이썬에서 가공,처리하고 싶다면 r.json()을 변수에 담아서 pandas 라이브러리와 openpyxl모듈을 사용하여 데이터를 처리하면 됩니다.

campaign id확인 방법

python_naversearchAPI_options

Stat 서비스를 사용하기 위해서는 campaign id 정보(혹은 Ad group id, Ad keyword id, Ad id)를 stat_ids 변수에 할당해야 합니다.

광고 콘솔에서 campaign id를 확인하기 위해서는 왼쪽의 모든 캠페인을 누른 후, 오른쪽 사용자 설정버튼을 누르면 나타나는 사용자 설정 창에서 캠페인 ID를 체크하면 확인할 수 있습니다. 이와 같은 방법으로 Ad group id는 캠페인 내의 사용자 설정 창에서, Ad keyword id는 광고그룹 내의 사용자 설정창에서, Ad id는 소재 탭의 사용자 설청 창에서 확인할 수 있습니다.

Leave a Comment