Qual é a diferença entre o AWS boto e o boto3 [fechado]

141

Sou novo na AWS usando Python e estou tentando aprender a API boto, mas notei que existem duas versões / pacotes principais para o Python. Isso seria boto e boto3.

Qual é a diferença entre as bibliotecas AWS boto e boto3?

Matt
fonte
7
Mais de quatro anos depois de ser perguntado e dois anos depois de fechado, esta pergunta e a resposta continuam sendo úteis. Não está pedindo opiniões ou recomendações, está fazendo uma pergunta técnica sobre a diferença entre duas bibliotecas.
Daniele Procida

Respostas:

185

O pacote boto é a biblioteca Python codificada à mão que existe desde 2006. É muito popular e é totalmente suportada pela AWS, mas porque é codificada à mão e há muitos serviços disponíveis (com mais aparecendo o tempo todo) é difícil de manter.

Portanto, boto3 é uma nova versão da biblioteca boto baseada em botocore . Todas as interfaces de baixo nível para a AWS são direcionadas a partir de descrições de serviço JSON que são geradas automaticamente a partir das descrições canônicas dos serviços. Portanto, as interfaces estão sempre corretas e sempre atualizadas. Há uma camada de recursos na parte superior da camada do cliente que fornece uma interface Pythonic mais agradável.

A biblioteca boto3 está sendo desenvolvida ativamente pela AWS e é a que eu recomendo que as pessoas usem se estiverem iniciando um novo desenvolvimento.

garnaat
fonte
11
Na prática, os serviços da AWS que não possuem uma camada de recursos no boto3 costumam ser mais fáceis de manipular no boto. YMMV
Atifm