De Azure-bibliotheken (SDK) voor Python gebruiken
De open-source Azure-bibliotheken voor Python vereenvoudigen het inrichten, beheren en gebruiken van Azure-resources vanuit Python-toepassingscode.
De details die u echt wilt weten
De Azure-bibliotheken zijn de manier waarop u communiceert met Azure-services vanuit Python-code die u lokaal of in de cloud kunt uitvoeren. (Of u Python-code binnen het bereik van een bepaalde service kunt uitvoeren, is afhankelijk van of die service op dit moment ondersteuning biedt voor Python.)
De bibliotheken ondersteunen Python 2.7 en Python 3.6 of hoger en worden ook getest met PyPy 5.4+.
De Azure SDK voor Python bestaat uitsluitend uit meer dan 180 afzonderlijke Python-bibliotheken die betrekking hebben op specifieke Azure-services. Er zijn geen andere hulpprogramma's in de SDK.
Bij het lokaal uitvoeren van code is de authenticatie met Azure afhankelijk van omgevingsvariabelen zoals beschreven in Uw lokale dev-omgeving configureren.
Als u bibliotheekpakketten met pip wilt installeren, gebruikt
pip install <library_name>u bibliotheeknamen uit depip install <library_name>. Als u bibliotheekpakketten wilt installeren in Conda-omgevingen, gebruikt uconda install <package_name>namen uit hetconda install <package_name>. Zie Azure-bibliotheken installeren voor meer informatie.Er zijn afzonderlijke beheer-en clientbibliotheken (ook wel 'beheervlak'- en 'gegevensvlakbibliotheken' genoemd). Elke set heeft verschillende doeleinden en wordt gebruikt door verschillende soorten code. Zie de volgende secties verder in dit artikel voor meer informatie:
Documentatie voor de bibliotheken vindt u in de Naslaginformatie voor Azure voor Python,die is geordend op Azure-service, of de Python API-browser, die is ingedeeld op pakketnaam. Op dit moment moet u vaak op een aantal lagen klikken om de klassen en methoden te krijgen die u belangrijk vindt. Laat ons vooraf onze excuses maken voor deze subpar-ervaring. Er wordt aan gewerkt om dit te verbeteren.
Als u de bibliotheken zelf wilt uitproberen, raden we u aan eerst uw lokale dev-omgeving in te stellen. Vervolgens kunt u een van de volgende zelfstandige voorbeelden proberen (in elke volgorde): voorbeeld: Een resourcegroep inrichten, voorbeeld: Azure Storageinrichten en gebruiken, voorbeeld: Een web-appinrichten en code implementeren, Voorbeeld:Een MySQL-databaseinrichten en gebruiken, en voorbeeld: Een virtuele machine inrichten.
Zie Introducing the Azure SDK for Python (PyCon 2021) (Introductie van de Azure SDK voor Python (PyCon 2021) en Using Azure SDKs to interact with Azure resource (PyCon 2020) (Azure-SDK's gebruiken om te communiceren met Azure-resources (PyCon 2020) voor demonstratievideo's.
Niet-essentiële maar nog steeds interessante details
Omdat de Azure CLI is geschreven in Python met behulp van de beheerbibliotheken, kunt u alles doen met Azure CLI-opdrachten die u ook kunt uitvoeren vanuit een Python-script. De CLI-opdrachten bieden echter veel nuttige functies, zoals het uitvoeren van meerdere taken tegelijk, het automatisch verwerken van asynchrone bewerkingen, het opmaken van uitvoer zoals verbindingsreeksen, en meer. Daarom kan het gebruik van de CLI (of het equivalent ervan, Azure PowerShell) voor geautomatiseerde inrichting en beheerscripts aanzienlijk handiger zijn dan het schrijven van de equivalente Python-code, tenzij u een veel exactere mate van controle over het proces wilt hebben.
De Azure-bibliotheken voor Python bouwen voort op de onderliggende Azure REST API, zodat u deze API's kunt gebruiken via bekende Python-paradigma's. U kunt echter altijd de REST API rechtstreeks vanuit Python-code gebruiken, indien gewenst.
U vindt de broncode voor de Azure-bibliotheken op https://github.com/Azure/azure-sdk-for-python . Als opensource-project zijn bijdragen welkom.
Hoewel u de bibliotheken kunt gebruiken met interpreters zoals IronPython en Jython, die we niet testen, kunt u te maken krijgen met geïsoleerde problemen en incompatibiliteit.
De bron-repo voor de referentiedocumentatie voor de bibliotheek-API bevindt zich op https://github.com/MicrosoftDocs/azure-docs-sdk-python/ .
Momenteel werken we de Azure-bibliotheken voor Python-bibliotheken bij om algemene cloudpatronen te delen, zoals verificatieprotocollen, logboekregistratie, tracering, transportprotocollen, gebufferd antwoord en nieuwe proberen.
Deze gedeelde functionaliteit is opgenomen in de azure-core-bibliotheek.
De bibliotheken die momenteel met de Core-bibliotheek werken, worden vermeld in azure SDK voor de nieuwste versies van Python. Deze bibliotheken, voornamelijk de clientbibliotheken, worden soms 'track 2' genoemd.
De beheerbibliotheken en andere die nog niet zijn bijgewerkt, worden soms 'track 1' genoemd.
Zie python guidelines: Introduction (Python-richtlijnen: inleiding) voor meer informatie over de richtlijnen die we op de bibliotheken toepassen.
Azure-resources inrichten en beheren met beheerbibliotheken
De beheerbibliotheken (of 'beheervlak') van de SDK, waarvan de namen allemaal beginnen met , helpen u bij het maken, inrichten en anderszins beheren van Azure-resources vanuit Python-scripts. Alle Azure-services hebben bijbehorende beheerbibliotheken.
Met de beheerbibliotheken kunt u configuratie- en implementatiescripts schrijven om dezelfde taken uit te voeren als via de Azure Portal of de Azure CLI. (Zoals eerder vermeld, is de Azure CLI geschreven in Python en worden de beheerbibliotheken gebruikt om de verschillende opdrachten te implementeren.)
In de volgende voorbeelden ziet u hoe u een aantal primaire beheerbibliotheken gebruikt:
- Een resourcegroep inrichten
- Resourcegroepen in een abonnement op een lijst zetten
- Azure Storage inrichten
- Een web-app inrichten en code implementeren
- Een database inrichten en er query's op uitvoeren
- Een virtuele machine inrichten
Zie het README.md- of README.rst-bestand in de projectmap van de bibliotheek in de SDK-opslagplaats GitHub voor meer informatie over het werken met elke beheerbibliotheek. U kunt ook aanvullende codefragmenten vinden in de referentiedocumentatie en de Azure-voorbeelden.
Migreren van oudere beheerbibliotheken
Als u code migreert van oudere versies van de beheerbibliotheken, bekijkt u de volgende details:
- Zie Verifiëren met
ServicePrincipalCredentialsServicePrincipalCredentialsals u de klasse gebruikt. - De namen van asynchrone API's zijn gewijzigd zoals beschreven in Bibliotheekgebruikspatronen - asynchrone bewerkingen. Eenvoudig gezegd, de namen van asynsynthetische API's in nieuwere bibliotheken beginnen met
begin_. In de meeste gevallen blijft de API-handtekening hetzelfde.
Verbinding maken azure-resources met clientbibliotheken maken en gebruiken
Met de clientbibliotheken (of gegevensvlak) van de SDK kunt u Python-toepassingscode schrijven om te communiceren met services die al zijn ingericht. Clientbibliotheken bestaan alleen voor services die ondersteuning bieden voor een client-API.
Het artikel, Voorbeeld: Gebruik Azure Storage, biedt een eenvoudige illustratie van het gebruik van de clientbibliotheek.
Verschillende Azure-services bieden ook voorbeelden die gebruikmaken van deze bibliotheken. Zie de volgende indexpagina's voor aanvullende koppelingen:
- App-hosting
- Cognitive Services
- Gegevensoplossingen
- Identiteit en beveiliging
- Machine learning
- Berichten en IoT
- Overige services
Zie het bestand README.md of README.rst in de projectmap van de bibliotheek in de GitHub-opslagplaats van de SDK voor meer informatie over het werken met elke clientbibliotheek. U kunt ook aanvullende codefragmenten vinden in de referentiedocumentatie en de Azure-voorbeelden.
Hulp vragen en verbinding maken met het SDK-team
- Ga naar de documentatie voor Azure-bibliotheken voor Python
- Post vragen aan de community op Stack Overflow
- Openstaande problemen met de SDK op GitHub
- Vermeldingen @AzureSDK Twitter
- Een korte enquête over de Azure SDK voor Python voltooien
Volgende stap
We raden u ten zeerste aan een een keer uw lokale ontwikkelomgeving in te stellen, zodat u eenvoudig een van de Azure-bibliotheken voor Python kunt gebruiken.