파이썬 공부

파이썬으로 php에 json 보내기 삽질하는 중

싸라리리 2022. 12. 28. 22:17
반응형

파이썬에서 가져온 주가 정보를 웹페이지에 보내 저장하려고 한다. 

 

가져온 주가정보가 json 이라서 그대로 php 페이지로 보낸다. 

 

requests 로 post 방식으로 기냥 쐈는데 ...

 

안감.

 

 

받아와서 

res.json()['output']

요렇게 문자열 변수로 담아서 보내서 그런가? 

 

왜 안되는지 모르겠다. 

 

문득 문자열로 형변환을 해야 하는가? 라는 생각이 들었다

 

아님

 

잠깐 생각하다가 

단순한 json을 보내봐야겠다는 생각이 들었다.

data = {
        "dd": "d"
    }

저걸 보냈다. 

 

아.. 

 

역시 안되는구나.. 

 

 


그러다가.. 

 

헉!!!!

 

헤더 문제였다니.. 

 

headers = {
        "Content-Type":"application/json", 
    }

컨텐츠 타입을 잘못써서 생긴 문제였네.. 

 

헤더 없이 보내니 기냥 포스트로 붙음.. ㅠㅠ 

 

다시 데이터를 보내보았으나 

 

..

 

또 안됨 ㅠㅠ

 

이번엔 인코딩이 문제.. 

 

파이썬은 인코딩이 예상과 다르면 아예 보내지 않는구만

 

'latin-1' codec can't encode characters in position 9503-9506: Body ('정상처리') is not valid Latin-1.

 

지가 받아놓고 걍 보내믄 안되나? 

 

 Use body.encode('utf-8') if you want to send it encoded in UTF-8.

 

라고 해놧길래

txt = txt.encode("utf-8")

를 붙였는데 이번엔 다시 데이터가 안감. 

 

ㅠㅠ

 

한참 코드를 보다보니 문자열이라 그런것 같다. 

문자열을 json으로 바꿔야 할 것 같다. 

 

txt = json.loads( txt.encode("utf-8") )

 

맞다. 된다.

 

저거였네

 

일단은 여기까지 

반응형