rets-python с флягой не может вернуться как json - PullRequest
0 голосов
/ 06 июля 2019

Я делаю проект, связанный с rets, так или иначе, у моего соавтора возникла проблема с использованием rets-client для js во время установки.В любом случае, поэтому я решил найти python вместо этого, который я нашел rets-python из https://github.com/opendoor-labs/rets

Я могу получить данные, возвращенные из rets, как-то я хотел сделать api, поэтому яустановлен flask (новый с флягой)

Однако я пытался вернуть данные в JSON Я просто продолжал получать ошибки

I, это мой код

import json

from flask import Flask, Response, jsonify

app = Flask(__name__)


@app.route('/')
def mls():
    from rets.client import RetsClient

    client = RetsClient(
        login_url='xxxxxxxxxxxx',
        username='xxxxxxxxxxxx',
        password='xxxxxxxxxxxxx',
        # Ensure that you are using the right auth_type for this particular MLS
        # auth_type='basic',
        # Alternatively authenticate using user agent password
        user_agent='xxxxxxxxxxxxxxxx',
        user_agent_password='xxxxxxxxxxxxxxxx'
    )

    resource = client.get_resource('Property')
    print(resource)

    resource.key_field

    print(resource.key_field)

    resource_class = resource.get_class('RD_1')
    print(resource_class)

    search_result = resource_class.search(query='(L_Status=1_0)', limit=2)

Я напишу здесь свои результаты, так как я попробовал несколько разных результатов

    # return jsonify(results=search_result.data)
    # TypeError: <Record: Property:RD_1:259957852> is not JSON serializable

    return Response(json.dumps(search_result.data), mimetype='application/json')
    # TypeError: <Record: Property:RD_1:259957852> is not JSON serializable

    return json.dumps(search_result.data)
    # TypeError: <Record: Property:RD_1:259957852> is not JSON serializable

Я пытался преобразовать результаты в данные, такие как dict(search_result.data), что дает мне ошибки типа TypeError: cannot convert dictionary update sequence element #0 to a sequence

если я пытаюсь получить print(type(search_result.data[0].data)), это возвращение <class 'collections.OrderedDict'> Я пытался jsonify, json.dump, а также с Response только с одной этой записью с * 1032 или без dict() Я получаю эту ошибку TypeError: Decimal('1152') is not JSON serializable

также print(type(search_result.data)) дает tuple

Кто-нибудь может мне помочь?

Заранее спасибо за любую помощь и советы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...