Python оболочка вокруг API REST с использованием pandas - PullRequest
0 голосов
/ 21 июня 2020

Я хотел бы создать оболочку Python вокруг API REST, чтобы каждый раз не использовать HTTP-запросы с нуля. Я хотел бы сделать что-то очень простое, и я не знаю, как организовать свой проект.

У меня есть одна конечная точка, которая перечисляет всех клиентов в базе данных с их идентификаторами, именами и национальностью

https://myapiendpoint/customers

Я могу получить информацию об одном конкретном клиенте с конечной точкой:

https://myapiendpoint/customers/{ID}

Я могу получить информацию обо всех продуктах, купленных одним клиентом с конечной точкой

https://myapiendpoint/customers/{ID}/products

и я могу получить всю информацию о продуктах, которые были проданы для всех клиентов с помощью

https://myapiendpoint/products

, или получить информацию об одном конкретном продукте

https://myapiendpoint/products/{ID}

Итак, я предполагаю, что у меня будет первые два класса, «Клиенты» и «Продукты», и до сих пор я создавал класс «Клиенты» следующим образом:

from .session import session
import json
import pandas as pd

class Customers(object):
    def __init__(self, id, name, nationality):
        self.id = id
        self.name = name
        self.nationality= nationality

    def info(self):
        path = 'https://myapiendpoint/customers'
        response = session.get(path)
        json_response = json.loads(response.text)

        df = pd.DataFrame.from_Dict(json_response)

        return df

, где session.py - это файл, содержащий соединение с API. Я не знаю, как продолжить или организовать свой класс Customer, чтобы он был полезным (то же самое с классом Products, но я думаю, что если вы можете помочь мне с этим классом, я мог бы реализовать то же самое в другом классе)

...