xml 을 Post 하라고 나와있는데 처음이라서요.
제가 아는 대로 requests 를 이용하여 post 하려는데 Dict 형식으로 data를 보내는 것 밖에 몰라서
xml 을 dict로 변환한 뒤 json으로 한 번 더 깔끔하게 변환했다가 다시 dict로 변환하여
requests.post 의 인수로 넣어주었습니다. 이렇게 하면 안되는 걸까요?
import requests
import json
import xml.etree.ElementTree as etree
import xmltodict
host = “https://kakaoi-newtone-openapi.kakao.com”
path = “/v1/synthesize”
authorization = “a5ee2b6994b2210fdbaf7a8ddcc23f11”
content_Type = “application/xml”
url = host + path
headers = {‘Content-Type’ : content_Type,
‘Authorization’:authorization
}
xml = “”“<?xml version="1.0" encoding="UTF-8"?>
그는 그렇게 말했습니다.
잘 지냈어? 나도 잘 지냈어.
금요일이 좋아요.
”“”
dict_type = xmltodict.parse(xml)
json_type = json.dumps(dict_type)
dict2_type = json.loads(json_type)
data = dict2_type
r = requests.post(url, headers = headers, data = data)
print(r.json())
{‘code’: 400, ‘description’: ‘fail to parse the xml body’}