그래서 나는 이것에 많은 시간을 할애했고, 그것은 나에게 간단한 수정이어야한다고 생각합니다. 페이스 북의 인증을 사용하여 내 사이트의 사용자를 등록하려고 시도하고 있으며 서버 측에서이를 수행하려고합니다. 나는 내 액세스 토큰을 얻을 지점에 입수하고, 한 내가 갈 때 :파이썬에서 사전에 문자열
https://graph.facebook.com/me?access_token=MY_ACCESS_TOKEN
내가 얻을 내가 찾는 정보이처럼 문자열로 :
{"id":"123456789","name":"John Doe","first_name":"John","last_name":"Doe","link":"http:\/\/www.facebook.com\/jdoe","gender":"male","email":"jdoe\u0040gmail.com","timezone":-7,"locale":"en_US","verified":true,"updated_time":"2011-01-12T02:43:35+0000"}
그래서 내가 피클을 사용했지만,이 ERR을 가지고 :이 오류를 받고 있어요
ValueError: dictionary update sequence element #0 has length 1; 2 is required
그것은 내가 그냥이에 dict(string)
을 사용할 수있을 것처럼 보이지만 나 :
KeyError: '{'
나는 그것을 해제 직렬화 django.serializers
를 사용하여 시도했지만 비슷한 결과를 가지고 있었다. 이견있는 사람? 나는 대답이 단순해야한다고 생각하고, 나는 단지 어리 석다. 어떤 도움을 주셔서 감사합니다!
문자열을 파이썬으로 평가하려면 문자열을 변경해야합니다 :' "verified": true'는'true'가 정의되지 않으면 실패합니다. 또는''검증 된 ': true' 또는''verified': "true"'를 사용할 수 있습니다. –
@Matt : 그는 graph.facebook.com의 출력 형식을 변경할 수 있을지 의심 스럽다. –
@Fred : 질문의 제목 ("Python에서 사전으로 문자열")이 주어지면'ast.literal_eval()'을 호출하기 전에 Python에서이 문자열을 변경할 수 있다고 생각합니다. JSON 디시리얼라이저가 더 나은 솔루션 인 경우 (수정 된) 답변이 옳습니다. –