2009-08-17 29 views
8

Tôi đang viết một cái mới (cho Netflix), và đơn giản là tự hỏi nếu có bất kỳ thư viện tham khảo tuyệt vời cho tôi để nghiên cứu.Ai đó có thể đề xuất một trình bao bọc Python được thiết kế tốt của một API REST không?

Đặc biệt, tôi đang tìm cách thông minh để thể hiện một điểm cuối REST trong mã, cần ít nhất một URL, phương thức và thông số, và trong trường hợp của Netflix, thông tin về mức xác thực được yêu cầu.

Để rõ ràng, tôi đang tìm kiếm các thư viện Python thành ngữ và được viết tốt bao gồm các API REST. Nếu thư viện rất nhanh, nhưng khó sử dụng và/hoặc viết kém, tôi có lẽ ít quan tâm hơn.

+0

Khác với urllib2? –

Trả lời

1

Đây là một câu hỏi thực sự cũ, nhưng kể từ khi tôi đến với nó vẫn còn, tôi nghĩ rằng tôi muốn cung cấp một câu trả lời nhanh chóng.

Tôi đã sử dụng GitHub3 wrapper một chút công bằng và tôi luôn bị ấn tượng bởi tài liệu. Một vấn đề với việc sử dụng nó như một hướng dẫn là nó hoàn toàn rất lớn.

Trình bao bọc đẹp khác là Gdax-python wrapper để truy cập trao đổi Gdax cho tiền điện tử. Mặc dù thiếu nghiêm trọng tài liệu trong mã và tôi không phải là người hâm mộ có các khách hàng riêng biệt cho các cuộc gọi API công khai và các cuộc gọi API được xác thực, tôi luôn thấy nó dễ sử dụng.

Tôi chắc chắn có rất nhiều thứ khác, nhưng nhiều cái mà tôi đã sử dụng rơi vào một số bẫy chính. Một vài kiến ​​nghị cá nhân:

  • có một lớp khách hàng duy nhất để quản lý tất cả các thông tin liên lạc

  • thiết lập một đối tượng khách hàng requests.Session() để thiết lập tất cả auth/tiêu đề thông tin cho tất cả gọi

  • sử dụng một hàm lớp _make_requests duy nhất để lắp ráp url, gửi yêu cầu và xử lý tất cả các mã trạng thái HTTP khác nhau có thể được trả lại.

Các vấn đề liên quan