Jaka jest różnica między AWS boto i boto3 [zamknięte]

141

Jestem nowy w AWS używającym Pythona i próbuję nauczyć się API boto, ale zauważyłem, że istnieją dwie główne wersje / pakiety dla Pythona. To byłoby boto i boto3.

Jaka jest różnica między bibliotekami AWS boto i boto3?

Matt
źródło
7
Ponad cztery lata po zadaniu i dwa lata po zamknięciu, to pytanie i odpowiedź są nadal przydatne. Nie prosi o opinie czy rekomendacje, ale zadaje techniczne pytanie o różnicę między dwiema bibliotekami.
Daniele Procida,

Odpowiedzi:

185

Boto pakiet jest ręcznie kodowana biblioteka Pythona, który istnieje od roku 2006. Jest to bardzo popularny i jest w pełni obsługiwana przez AWS, ale ponieważ jest ręcznie kodowane i istnieje tak wiele usług dostępnych (bardziej pojawiające się cały czas) to jest trudny do utrzymania.

Tak więc boto3 to nowa wersja biblioteki boto oparta na botocore . Wszystkie interfejsy niskiego poziomu do AWS są oparte na opisach usług JSON, które są generowane automatycznie na podstawie kanonicznych opisów usług. Dlatego interfejsy są zawsze poprawne i zawsze aktualne. Na wierzchu warstwy klienta znajduje się warstwa zasobów, która zapewnia ładniejszy, bardziej Pythonowy interfejs.

Biblioteka boto3 jest aktywnie rozwijana przez AWS i jest tą, którą poleciłbym osobom rozpoczynającym nowy rozwój.

garnaat
źródło
11
W praktyce usługi AWS, które nie mają warstwy zasobów w boto3, są często łatwiejsze w obsłudze w trybie boto. YMMV
Atifm