안녕하세요, 마케팅코더입니다.
오늘은 파이썬으로 쿠팡 파트너스로 API 활용하는 방법에 대해 말씀드리고자 합니다.
현재 나와있는 쿠팡 파트너스 내에 API 가이드로 실제 코딩을 돌려볼시 다소 문제가 있는 점으로 보입니다.
이에 각종 코딩이 달라서 에러 반환시 신경써야되는 일도 많이 겪습니다.
이에 쿠팡파트너스의 API를 제대로 활용하는 방안을 알아보도록 하겠습니다.
먼저 저는 3.9.7 파이썬 버전을 사용했습니다. 이외 작업은 주피터 노트북에서 실행한 결과입니다.
오늘 파이썬 작업은 실제 쿠팡 파트너스 API를 활용하여 그 결과값을 제대로 받는 작업까지 입니다.
파이썬 쿠팡파트너스 API 발급
먼저 하기 이미지와 같이 추가가능 > 파트너스 API 메뉴에서 들어갑니다.
이외 하기에 보시면 아시겠지만 API 키 발급을 해줍니다.
특히 Access Key 와, Secret Key는 보안상 문제로 절대 노출되지 않도록 각심히 유의하여 보시면 됩니다.
이에 해당 키 발급을 가졌다는 것으로 보고, 이제 시작합니다.
파이썬 쿠팡파트너스 API 검색 키워드 상품 정보 결과 가져오기
하기 코딩은 검색 키워드에 대한 쿠팡 검색 결과와 상세 상품 정보를 보여줍니다. 한번 살펴볼까요?
예를 들어, "냉장고" 라는 검색 키워드를 검색했을 시의 하기 이미지와 같은 검색 정보를 json 파일로 받아옵니다.
다만 주의사항으론 검색 키워드를 1시간 내 10회 이상시 과다 호출로 정지 먹을 수 있습니다!
과다 호출시 24시간동안 API 사용이 안 되니 꼭 유의하시길 바랍니다.
#쿠팡 파트너스 - 검색키워드 입력
import hmac
import hashlib
import binascii
import os
import time
import requests
import json
import urllib.request
from selenium import webdriver
import secrets
from urllib.parse import urlencode
from time import gmtime, strftime
import pandas as pd
keyword ='애플워치스트랩' #키워드를 입력하세요!
REQUEST_METHOD = "GET"
DOMAIN = "https://api-gateway.coupang.com"
URL = "/v2/providers/affiliate_open_api/apis/openapi/products/search?keyword="+urllib.parse.quote(keyword)+"&limit=10"
# Replace with your own ACCESS_KEY and SECRET_KEY
ACCESS_KEY = "" #access_key 를 입력하세요!
SECRET_KEY = "" #secret_key 를 입력하세요!
def generateHmac(method, url, api_secret_key, api_access_key):
path, *query = url.split('?')
os.environ['TZ'] = 'GMT+0'
dt_datetime = strftime('%y%m%d', gmtime()) + 'T' + strftime('%H%M%S', gmtime()) + 'Z' # GMT+0
msg = dt_datetime + method + path + (query[0] if query else '')
signature = hmac.new(bytes(api_secret_key, 'utf-8'), msg.encode('utf-8'), hashlib.sha256).hexdigest()
return 'CEA algorithm=HmacSHA256, access-key={}, signed-date={}, signature={}'.format(api_access_key, dt_datetime, signature)
authorization = generateHmac(REQUEST_METHOD, URL, SECRET_KEY, ACCESS_KEY)
url = "{}{}".format(DOMAIN, URL)
resposne = requests.request(method=REQUEST_METHOD, url=url,
headers={
"Authorization": authorization,
"Content-Type": "application/json"
},
data=json.dumps(REQUEST)
)
r_data = resposne.json() #json
r_data['data'] #결과 보기
#keyword_result_summary = pd.DataFrame(r_data['data']['productData']) # 데이터 프레임
#keyword_result_summary #보기
#product_urls = r_data['data']['productData']
#product_urls
#keyword_result_summary
파이썬 쿠팡파트너스 API 숏츠 링크 만들기
하기 코딩은 각 쿠팡 상품 페이지 내의 숏츠 링크를 자동으로 생성해 줍니다. 한번 살펴볼까요?
예를 들어, 특정 상품 페이지의 쿠팡 상품 링크를 넣으면 하기와 같이 rCode의 0결과와 함께 숏츠 링크를 확인할 수 있습니다.
#쿠팡 파트너스 기본 예제(숏츠 링크생성)
import hmac
import hashlib
import binascii
import os
import time
import requests
import json
import urllib.request
from selenium import webdriver
import secrets
from urllib.parse import urlencode
import hmac
import hashlib
import binascii
import os
import time
import requests
import json
from time import gmtime, strftime
REQUEST_METHOD = "POST"
DOMAIN = "https://api-gateway.coupang.com"
URL = "/v2/providers/affiliate_open_api/apis/openapi/v1/deeplink"
# Replace with your own ACCESS_KEY and SECRET_KEY
ACCESS_KEY = "" #키를 입력하세요!
SECRET_KEY = "" #키를 입력하세요!
REQUEST = { "coupangUrls": ['https://www.coupang.com/vp/products/5078753461', #쿠팡 URL를 집어넣습니다.
'https://www.coupang.com/vp/products/2303973364'
]
}
def generateHmac(method, url, api_secret_key, api_access_key):
path, *query = url.split('?')
os.environ['TZ'] = 'GMT+0'
dt_datetime = strftime('%y%m%d', gmtime()) + 'T' + strftime('%H%M%S', gmtime()) + 'Z' # GMT+0
msg = dt_datetime + method + path + (query[0] if query else '')
signature = hmac.new(bytes(api_secret_key, 'utf-8'), msg.encode('utf-8'), hashlib.sha256).hexdigest()
return 'CEA algorithm=HmacSHA256, access-key={}, signed-date={}, signature={}'.format(api_access_key, dt_datetime, signature)
authorization = generateHmac(REQUEST_METHOD, URL, SECRET_KEY, ACCESS_KEY)
url = "{}{}".format(DOMAIN, URL)
resposne = requests.request(method=REQUEST_METHOD, url=url,
headers={
"Authorization": authorization,
"Content-Type": "application/json"
},
data=json.dumps(REQUEST)
)
print(resposne.json())
파이썬 쿠팡파트너스 API 카테고리별 베스트 상품 관련 상세 상품 정보
하기 코딩은 각 카테고리별 베스트 상품 관련 상세 상품 정보를 반환하여 보여줍니다. 한번 살펴볼까요?
예를 들어, 각 카테고리 코드를 categoryID에 넣으면 하기 이미지와 같이 rCode의 0결과와 함께 해당 베스트 상품의 상세 정보를 Top 100 위까지 확인 가능합니다. 해당 ID는 "1019" 카테고리 ID를 입력시 관련 데이터 프레임 형식으로 결과값을 반환되도록 설정한 것입니다.
#쿠팡 파트너스 - 카테고리별 베스트 상품에 대한 상세 상품 정보 생성
import hmac
import hashlib
import binascii
import os
import time
import requests
import json
import urllib.request
from selenium import webdriver
import secrets
from urllib.parse import urlencode
from time import gmtime, strftime
import pandas as pd
#카테고리 코드
#Id 이름
#1001 여성패션
#1002 남성패션
#1010 뷰티
#1011 출산/유아동
#1012 식품
#1013 주방용품
#1014 생활용품
#1015 홈인테리어
#1016 가전디지털
#1017 스포츠/레저
#1018 자동차용품
#1019 도서/음반/DVD
#1020 완구/취미
#1021 문구/오피스
#1024 헬스/건강식품
#1025 국내여행
#1026 해외여행
#1029 반려동물용품
#1030 유아동패션
categoryId = '1019' # 카테고리 ID를 입력해주세요.
REQUEST_METHOD = "GET"
DOMAIN = "https://api-gateway.coupang.com"
URL = "/v2/providers/affiliate_open_api/apis/openapi/products/bestcategories/"+str(categoryId)+ "?limit=100"
# Replace with your own ACCESS_KEY and SECRET_KEY
ACCESS_KEY = "" #키를 입력하세요!
SECRET_KEY = "" #키를 입력하세요!
REQUEST = { "coupangUrls": ["https://www.coupang.com/np/search?component=&q=good&channel=user", "https://www.coupang.com/np/coupangglobal"]}
def generateHmac(method, url, api_secret_key, api_access_key):
path, *query = url.split('?')
os.environ['TZ'] = 'GMT+0'
dt_datetime = strftime('%y%m%d', gmtime()) + 'T' + strftime('%H%M%S', gmtime()) + 'Z' # GMT+0
msg = dt_datetime + method + path + (query[0] if query else '')
signature = hmac.new(bytes(api_secret_key, 'utf-8'), msg.encode('utf-8'), hashlib.sha256).hexdigest()
return 'CEA algorithm=HmacSHA256, access-key={}, signed-date={}, signature={}'.format(api_access_key, dt_datetime, signature)
authorization = generateHmac(REQUEST_METHOD, URL, SECRET_KEY, ACCESS_KEY)
url = "{}{}".format(DOMAIN, URL)
resposne = requests.request(method=REQUEST_METHOD, url=url,
headers={
"Authorization": authorization,
"Content-Type": "application/json"
},
data=json.dumps(REQUEST)
)
r_data = resposne.json() #json
r_data['data']
category_result_summary = pd.DataFrame(r_data['data']) # 데이터 프레임
category_result_summary #보기
파이썬 쿠팡파트너스 API 결과시연 장면
하기는 첫번째는 검색 키워드를 입력시 반환되는 쿠팡 파트너스 API 결과값을 json 형태로 따본 것입니다. 그리고 2번째는 쿠팡 파트너스 API 카테고리별 베스트 상품 관련 상세 상품 정보를 DataFrame 형태로 본 내용입니다. 숏츠 부분도 있긴 하지만, 더 자세한 결과를 알고 싶으시면 하기에 써진 곳으로 문의주시면 될 것 같습니다.
파이썬 쿠팡파트너스 API 관련 더 자세한 정보를 알고 싶으신가요?
쿠팡파트너스 API를 파이썬을 통해 더 자세한 정보 등을 알고 싶으시다면 언제든지 댓글로 편하게 말씀주세요.
제가 아는 한도 내의 정보는 전부 공유드릴 수 있도록 해보겠습니다. 이에 여러분들의 쿠팡 파트너스를 통한 금전적인 수익 활동에 소폭 도움이 되시길 바랍니다.
이외 하기로 여러분들의 궁금증이 있으시면 편하게 댓글 주시면 될것 같습니다.
오늘도 봐주셔서 감사합니다.
문의 ▶ big203040@naver.com
깃허브 ▶ https://github.com/DBhyeong/digital-marketing/blob/main/%5BPython%5D-%ED%8C%8C%EC%9D%B4%EC%8D%AC-%EC%BF%A0%ED%8C%A1-%ED%8C%8C%ED%8A%B8%EB%84%88%EC%8A%A4-API-%ED%99%9C%EC%9A%A9%ED%95%98%EA%B8%B0
카톡문의 ▶ https://open.kakao.com/me/hyeonginkorea
https://open.kakao.com/me/hyeonginkorea
'Python' 카테고리의 다른 글
[파이썬] 트위터 API 자동 포스팅을 위한 API Key 발급받기 (0) | 2022.06.10 |
---|---|
[Python] 쿠팡 상품 키워드 Top 10 리스트 크롤링, 숏츠 링크 생성 엑셀 파일 저장하기 (3) | 2022.06.06 |
[Python] 파이썬 heic jpg 변환 이미지 파일 밝기 조절 (0) | 2022.06.05 |
[Python] 파이썬 셀레니움 iframe 찾기 (1) | 2022.06.04 |
[Python] 셀레니움 기본 (0) | 2021.04.07 |
댓글