예제를 따라하면 제 경우에는 한글이 깨집니다.
data = "subject=" + subject + "&content=" + content
request = urllib.request.Request(url, data=data.en
엄청 삽질하다가 결국 찾았습니다.
위에처럼 하면 안되고
아래처럼 해주면 잘 됩니다.
from urllib.parse import urlencode
data = urlencode({'subject': subject, 'content': content}).encode()
request = urllib.request.Request(url, data=data)
아래는 naver developers에서 제공하는 샘플코드입니다.
# 네이버 카페 Open API 예제 - 글쓰기
import os
import sys
import urllib.request
token = "YOUR_ACCESS_TOKEN"
header = "Bearer " + token # Bearer 다음에 공백 추가
clubid = "CLUB_ID" # 카페의 고유 ID값
menuid = "MENU_ID" # (상품게시판은 입력 불가)
url = "https://openapi.naver.com/v1/cafe/" + clubid + "/menu/" + menuid + "/articles"
subject = urllib.parse.quote("[subject] 네이버 Cafe api Test Python")
content = urllib.parse.quote("[content] 네이버 Cafe api Test Python")
data = "subject=" + subject + "&content=" + content
request = urllib.request.Request(url, data=data.encode("utf-8"))
request.add_header("Authorization", header)
response = urllib.request.urlopen(request)
rescode = response.getcode()
if(rescode==200):
response_body = response.read()
print(response_body.decode('utf-8'))
else:
print("Error Code:" + rescode)
반응형
'Language > PYTHON' 카테고리의 다른 글
OPENAPI로 국토부 실거래가 조회할 때 python으로 정규식 사용해서 파싱하기 (20180130) (787) | 2018.01.30 |
---|---|
Python3로 naver 카페에 글쓰기 (18) | 2017.12.27 |
[라즈베리파이3] 조도센서로 값 받아서 서버의 DB로 데이터 전송해서 저장하기 (9) | 2017.04.21 |
[Redis] redis-cli로 ip, port, password 입력하여 접속하기 (9) | 2017.04.06 |
대한민국 인구수에 따른 분포도 그리기 (numpy, pandas, matplotlib) (8) | 2017.04.06 |