#python #anaconda #jupyter-notebook #visual-code #html #css #javascript #http

제목[re][re][re]데이터 크롤링 질문입니다!2022-06-02 00:33
작성자

직접 실행해본 결과 질문자분께서 처음 시도하신 "2) 문자열 '+'를 이용하여 붙힌 구조"로 실행이 됐습니다.

+를 이용해 문자열을 이어줄 경우 세미콜론은 문자열이 아니기 때문에 오류가 났던 것 같은데

url과 body 뒤에 세미콜론을 지워도 실행에 지장이 없어 제거하고 진행했습니다.



import os

import sys

import urllib.request

client_id = "YOUR_CLIENT_ID"

client_secret = "YOUR_CLIENT_SECRET"

url = "https://openapi.naver.com/v1/datalab/shopping/categories"


a = '50000000'

body = "{\"startDate\":\"2017-08-01\",\"endDate\":\"2017-09-30\",\"timeUnit\":\"month\",\"category\":[{\"name\":\"패션의류\",\"param\":[\""+ a +"\"]},{\"name\":\"화장품/미용\",\"param\":[\"50000002\"]}],\"device\":\"pc\",\"ages\":[\"20\",\"30\"],\"gender\":\"f\"}"


request = urllib.request.Request(url)

request.add_header("X-Naver-Client-Id",client_id)

request.add_header("X-Naver-Client-Secret",client_secret)

request.add_header("Content-Type","application/json")

response = urllib.request.urlopen(request, data=body.encode("utf-8"))

rescode = response.getcode()

if(rescode==200):

    response_body = response.read()

    print(response_body.decode('utf-8'))

else:

    print("Error Code:" + rescode)


댓글