728x90
반응형
안녕하세요.
오늘은 저번 시간에 이어서 출력한 품목들을 문서로 추출하는 프로그램을 작성해보도록하겠습니다~!
Let's Go~!

import datetime
import hmac
import hashlib
import os
import time
import requests
import json
import urllib.request
from urllib.parse import urlencode
class cupangMgr:
def generateHmac(self, method, url, secretKey, accessKey):
path, *query = url.split("?")
os.environ["TZ"] = "GMT+0"
datetime = time.strftime('%y%m%d') + 'T' + time.strftime('%H%M%S') + 'Z'
message = datetime + method + path + (query[0] if query else "")
signature = hmac.new(bytes(secretKey, "utf-8"), message.encode("utf-8"), hashlib.sha256).hexdigest()
return "CEA algorithm=HmacSHA256, access-key={}, signed-date={}, signature={}".format(accessKey, datetime, signature)
def get_productsdata(self, request_method, authorization, keyword, limit):
URL = "/v2/providers/affiliate_open_api/apis/openapi/products/search?keyword=" + urllib.parse.quote(keyword) + "&limit=" + str(limit)
url = "{}{}".format(self.DOMAIN,URL)
response = requests.request(method=request_method, url=url, headers={"Authorization": authorization, "Content-Type": "application/json;charset=UTF-8"})
retdate = json.dumps(response.json(), indent=4).encode('utf-8')
jsondata = json.loads(retdate)
data = jsondata['data']
productdata = data['productData']
return productdata
if __name__ == '__main__':
method = 'GET'
keyword = '마스크'
limit = 10
access_key=""
secret_key=""
URL = "/v2/providers/affiliate_open_api/apis/openapi/products/search?keyword=" + urllib.parse.quote(keyword)+"&limit="+str(limit)
test = cupangMgr()
authorization = test.generateHmac(method, URL, secret_key, access_key)
productdata = test.get_productsdata(method,authorization,keyword,limit)
productCount = len(productdata)
i = 0
while i < limit:
print(productdata[i]['productId'])
print(productdata[i]['productName'])
print(productdata[i]['productPrice'])
print(productdata[i]['productImage'])
print(productdata[i]['productUrl'])
print(productdata[i]['keyword'])
print(productdata[i]['rank'])
print(productdata[i]['isRocket'])
print(productdata[i]['isFreeShipping'])
print(datetime.datetime.now())
저번 시간에는 서칭한 품목들의 리스트를 console로 확인하는 방법까지했는데요.
이어서 시작하겠습니다.
일단 추출할수있는 lib 다운받아야합니다.
pip install pandas
pandas를 설치 후
import pandas as pd
삽입해줍니다.
그리고 아래처럼 코드를 삽입해주면됩니다.
while i < limit:
print(productdata[i]['productId'])
print(productdata[i]['productName'])
print(productdata[i]['productPrice'])
print(productdata[i]['productImage'])
print(productdata[i]['productUrl'])
print(productdata[i]['keyword'])
print(productdata[i]['rank'])
print(productdata[i]['isRocket'])
print(productdata[i]['isFreeShipping'])
print(datetime.datetime.now())
df = pd.DataFrame(productdata)
print(df)
df.to_csv('쿠팡_products_list.csv', index=False, encoding='utf-8-sig')
그리고 실행을 하면 csv파일이 다운받아져있을거에요!
그러면 오늘도 다들 즐거운 코딩하시고 다음시간에 만나요
안뇽~!

그럼 20000~
728x90
반응형
'Python' 카테고리의 다른 글
[python]티스토리 자동 포스팅 part3 (12) | 2023.04.30 |
---|---|
[Python]쿠팡 자동 포스팅 프로그램 현재 진행사항 (2) | 2023.04.25 |
[Python] 쿠팡 requests 사용하여 목록 요청 시 멈춤현상 (0) | 2023.04.25 |
[Python] 파이썬을 이용한 쿠팡 파트너스 자동 로그인 및 상품링크 가져오기!! Part1 (1) | 2023.04.25 |
[python] 쿠팡 파트너스 자동 포스팅하는 프로그램 만드는방법!!Part1 (0) | 2023.04.24 |
댓글