반응형
Object
인스턴스를 JSON으로 변환하는 데 문제가 있습니다.
ob = Object()
list_name = scaping_myObj(base_url, u, number_page)
for ob in list_name:
json_string = json.dumps(ob.__dict__)
print json_string
list_name
에는 Object
인스턴스 목록이 있습니다.
json_string
반환, 예 :
{"city": "rouen", "name": "1, 2, 3 Soleil"}
{"city": "rouen", "name": "Maman, les p'tits bateaux"}
하지만 목록의 모든 정보가 포함 된 JSON 문자열 1 개를 원합니다.
[{"city": "rouen", "name": "1, 2, 3 Soleil"}, {"city": "rouen", "name": "Maman, les p'tits bateaux"}]
해결 방법
목록 이해를 사용하여 사전 목록을 생성 한 다음이를 변환 할 수 있습니다.
json_string = json.dumps([ob.__dict__ for ob in list_name])
또는 default
함수를 사용하십시오. json.dumps ()
는 직렬화 할 수없는 모든 항목을 호출합니다.
def obj_dict(obj):
return obj.__dict__
json_string = json.dumps(list_name, default=obj_dict)
후자는 목록뿐만 아니라 구조의 모든 수준에 삽입 된 개체에 대해 작동합니다.
from marshmallow import Schema, fields
class ObjectSchema(Schema):
city = fields.Str()
name = fields.Str()
object_schema = ObjectSchema()
json_string = object_schema.dumps(list_name, many=True)
참조 페이지 https://stackoverflow.com/questions/26033239
반응형
'파이썬' 카테고리의 다른 글
파이썬 변수에서 Tkinter 레이블 업데이트 (0) | 2020.12.07 |
---|---|
파이썬 Mac에서 setuptools를 설치하는 방법 (0) | 2020.12.07 |
파이썬 조건에서 할당 할 수 있습니까? (0) | 2020.12.06 |
파이썬 Pandas Series와 단일 열 DataFrame의 차이점은 무엇입니까? (0) | 2020.12.06 |
파이썬 판다에서 단일 열을 반올림 (0) | 2020.12.06 |
댓글