Lycée   >   Terminale   >   NSI   >   Utiliser une API et des bibliothèques

Utiliser une API et des bibliothèques

  • Fiche de cours
  • Quiz
  • Profs en ligne
Objectifs
  • Comprendre comment utiliser une API.
  • Comprendre comment utiliser une bibliothèque.
Points clés
  • Une API est une interface qui permet aux développeurs d’intégrer à leurs projets des applications et des données.
  • Une bibliothèque est un ensemble de fonctions déjà codées que les développeurs peuvent directement utiliser.
  • Avant d’utiliser une API ou une bibliothèque, il est nécessaire d’en lire la documentation.
Pour bien comprendre

Savoir s’informer sur une bibliothèque Python.

1. Utiliser une API
a. Généralités
Une API (Application Programming Interface), interface de programmation d’application en français, est un ensemble d’applications et/ou de données informatiques rendues accessibles par une société, une administration ou un site web aux développeurs.

Les utilisateurs ne sont pas obligés de comprendre comment les API sont codées. Ils doivent juste savoir trouver la documentation nécessaire à leur utilisation.

L’accès aux services des API est libre ou payante. Cela dépend de leur objet ainsi que de la nature de l’accès que l’on veut (nombre d’accès, quantité de données, vitesse, etc.).

Les API permettent souvent de faire des requêtes HTTP pour récupérer des données via le web (température dans une ville, coordonnées GPS, images, etc.). Ces données sont généralement formatées au format JSON ou XML.

Le format JSON (JavaScript Object Notation) est un format de fichier texte dans lequel les données sont écrites comme des objets du langage Javascript. Cette écriture est proche des dictionnaires pour le langage Python. D’ailleurs, le module json de la bibliothèque standard de Python permet de récupérer les données des fichiers JSON sous la forme d’un dictionnaire.
Le format XML (Extensible Markup Language) est un format de fichier texte dans lequel les données sont structurées avec des balises, comme ce que l’on trouve avec le langage HTML.
Méthode
Il n’y a pas de méthode générale pour utiliser une API. L’essentiel est d’en récupérer la documentation et d’étudier les exemples proposés pour les adapter à ses propres projets. Chaque API propose un site web dans lequel on peut trouver toutes ces informations.

Lorsque l’on veut utiliser une API avec Python, on peut utiliser le module urllib de la bibliothèque standard pour effectuer les requêtes HTTP.
b. Exemple - Infoclimat

Infoclimat est un site gratuit dont le but est de fournir des informations météorologiques en temps réel en France et dans une partie de l’Europe à partir d’un maillage de stations météo.

Ce site propose une API pour obtenir des prévisions météo à 7 jours.

On trouve son site à l’adresse : https://www.infoclimat.fr/.

Pour l’utiliser, il faut procéder de la manière suivante.

  • Créer un compte (ce n’est pas obligatoire mais conseillé pour retrouver ses informations).
  • Choisir « Toutes les villes » dans l’onglet « Prévision ».
  • Renseigner le nom de la ville, par exemple « Lille ».
  • Une page web s’affiche avec des prévisions météo à 7 jours pour la ville de Lille.

Précision à 7 jours pour la ville de Lille
  • En bas de la page, cliquer sur le lien « Ces prévisions météo sur votre site ».
  • Une nouvelle page web s’affiche avec plusieurs codes qui permettent d’utiliser et/ou d’afficher les prévisions météo dans des projets informatiques.
    On y trouve :
    • une balise iframe pour intégrer ces prévisions sur un site web avec un simple copier/coller du code ;
    • une API XML pour récupérer les prévisions au format XML ;
    • une API JSON pour récupérer les prévisions au format JSON.

Par exemple, avec l’API JSON, pour récupérer le dictionnaire Python de ces prévisions, on peut utiliser les modules urllib et json de la manière suivante.


Les données ainsi récupérées sont denses et complexes. Une analyse de leur contenu est nécessaire pour pouvoir les utiliser.

2. Utiliser une bibliothèque
a. Généralités
En informatique, une bibliothèque (library en anglais) est un ensemble structuré de fonctions que l’on peut utiliser sans avoir à les réécrire. Cela permet aux développeurs de gagner en temps et en efficacité.

Le langage Python est libre et a une communauté très active. Il existe de nombreuses bibliothèques pour ce langage. Il convient toutefois d'être vigilant à ce que les bibliothèques utilisées soient de qualité et, au mieux, fassent ce que l’on veut. Il peut en effet être pertinent d’effectuer des tests et/ou d’en lire les codes avant utilisation. La qualité des bibliothèques est très variable.

Voici quelques bibliothèques intéressantes qui ne sont pas dans la bibliothèque standard de Python.

  • Pillow ou PIL : Création et manipulation d’images
  • scikit-learn : Machine learning (IA)
  • folium : Cartographie
  • pandas : Tableur sous Python
  • numpy : Traitement scientifique de données
Méthode
Lorsque l’on veut utiliser une bibliothèque qui n’est pas dans la bibliothèque standard de Python, il faut procéder de la manière suivante.
  • Installer la bibliothèque à partir d’un terminal de votre système d’exploitation grâce à la ligne de code :

    pip install nom_de_la_bibliothèque

  • Dans la console Python, charger la nouvelle bibliothèque pour tester si elle est bien installée avec l’instruction :

    import nom_de_la_bibliothèque

  • En cas d’erreur, réessayer de l’installer.
  • S’il n’y a pas d’erreur, la fonction help() permet d’obtenir la documentation de la bibliothèque en tapant help(nom_de_la_bibliothèque) dans la console Python.

Les bibliothèques les plus utilisées sont accompagnées de sites web dans lesquels on peut trouver une documentation détaillée et des exemples.

Une des différences importantes entre une API et une bibliothèque est le rapport que l’on a avec leur code source lorsqu’on les utilise.

En utilisant une API, le code source n’intéresse pas les développeurs. C’est juste l'accès au service qui nous intéresse. L’utilisation d’une bibliothèque n’exclut en revanche pas de s'intéresser au code source. C’est d’ailleurs recommandé pour mieux l’utiliser et comprendre ses fonctions.
b. Exemple - La bibliothèque Folium

Folium est une bibliothèque Python qui permet de créer des cartes interactives.

On trouve son site à l’adresse :
http://python-visualization.github.io/folium/.

On y trouve un sommaire avec :

  • une partie installing pour savoir comment installer folium ;
  • une partie quickstart pour aider à la prise en main de la bibliothèque.

Par exemple, le code suivant permet de créer un fichier html permettant d’afficher dans un navigateur une carte interactive centrée sur la ville de Portland (de coordonnées GPS 45.5236 et 122.6750).


Le fichier html créé se nomme ma_carte.html et se trouve dans le même dossier que le fichier Python du code précédent.

La carte créée est la suivante.


Carte interactive centrée sur la ville de Portland

Comment as-tu trouvé ce cours ?

Évalue ce cours !

 

Question 1/5

La médiane de 6 notes est 13. Cela signifie que :

Question 2/5

On a obtenu la série statistique suivante :

Combien vaut la médiane ?

Question 3/5

On a obtenu la série ci-dessous :

Quelle est la médiane de cette série ?

Question 4/5

On a relevé les tailles en cm des élèves d’une classe :

 

Parmi les propositions suivantes, laquelle est vraie ?

Question 5/5

Les notes en français de deux classes littéraires sont données dans le tableau suivant :

Quelle est la note médiane ?

Vous avez obtenu75%de bonnes réponses !

Recevez l'intégralité des bonnes réponses ainsi que les rappels de cours associés :

Votre adresse e-mail sera exclusivement utilisée pour vous envoyer notre newsletter. Vous pourrez vous désinscrire à tout moment, à travers le lien de désinscription présent dans chaque newsletter. Pour en savoir plus sur la gestion de vos données personnelles et pour exercer vos droits, vous pouvez consulter notre charte.

Une erreur s'est produite, veuillez ré-essayer

Consultez votre boite email, vous y trouverez vos résultats de quiz!

Découvrez le soutien scolaire en ligne avec myMaxicours

Le service propose une plateforme de contenus interactifs, ludiques et variés pour les élèves du CP à la Terminale. Nous proposons des univers adaptés aux tranches d'âge afin de favoriser la concentration, encourager et motiver quel que soit le niveau. Nous souhaitons que chacun se sente bien pour apprendre et progresser en toute sérénité ! 

Fiches de cours les plus recherchées

NSI

Utiliser les paradigmes impératifs et fonctionnels

NSI

Utiliser le paradigme objet

NSI

Repérer les bugs : typages, effets de bords, débordements

NSI

Repérer les bugs : structures

NSI

Anticiper les erreurs classiques

NSI

Utiliser Python pour déterminer les mesures des arbres binaires

NSI

Utiliser Python dans les arbres binaires de recherche

NSI

Rechercher et insérer une clé dans un arbre binaire de recherche

NSI

Parcourir un arbre binaire

NSI

Se déplacer dans un graphe