p. 08 Utilisez TCP et UDP en Python
p. 22 Développez une application graphique utilisant le réseau
p. 34 Utilisez des API REST en Python
p. 46 Scapy, le couteau suisse Python pour le réseau
p. 58 Créez un système de migration des rapports de bug de GitHub à votre GitLab
p. 68 Créez un driver FUSE pour Google Drive
p. 76 Créez un bot IRC
p. 86 Créez un robot Slack
p. 98 Créez un client XMPP
p. 108 Envoyez des SMS avec un Raspberry Pi et Python
p. 116 Un exemple concret de serveur HTTP servant des fichiers
« Et puis c’est arrivé... une porte s’est ouverte sur un monde nouveau... j’envoie un signal, il traverse les lignes téléphoniques (...). »
« The Hacker Manifesto », The Mentor, 1986
Depuis que ces lignes ont été écrites, 31 ans se sont écoulés. Et pourtant elles n’ont jamais autant été d’actualité. Le net ne cesse de grandir, de se développer, d’accoucher de nouvelles technologies et de nouvelles façons de faire communiquer différentes entités entre elles. Le SOAP a laissé la place au REST, les réseaux sociaux se diversifient, chaque jour amène son lot de nouveaux services qui offrent chacun leur API.
Dans cet écosystème foisonnant, nous, développeuses et développeurs Python, sommes plus que chanceux. En effet, la mise en place de communications par échange d’informations passant par des connexions réseaux est au cœur du Python. Que ce soit grâce aux modules fournis par la bibliothèque standard ou les multiples bibliothèques disponibles, tout est fait pour que nous ayons tous les outils pour pouvoir travailler efficacement.
« Nous explorons... (...). Nous recherchons la connaissance... (...). ». Le magazine que vous tenez entre les mains a pour but de vous faire découvrir ou approfondir les différents moyens de mettre en places des communications réseaux avec notre langage préféré :
--> Que vous vouliez en apprendre plus sur les concepts de base fondamentaux de la communication réseau bas niveau, pour mettre en place des applications ayant à la fois une interface graphique et des communications réseaux, consommer des API web REST diverses ou pour travailler directement sur les paquets réseaux, la première partie de ce hors-série est faite pour vous.
--> Si vous avez plutôt envie de suivre la mouvance des chats-bots, que ce soit pour se connecter à IRC, Jabber, Slack ou des réseaux sociaux, là aussi, vous allez pouvoir trouver votre bonheur dans les pages qui vous attendent dès que vous aurez fini de lire cette petite préface.
--> Enfin, si vous voulez mettre en place des serveurs de fichiers ou interagir avec le réel et envoyer des SMS avec l’un de vos Raspberry Pi préférés, alors vous allez adorer la derrière partie de ce hors-série.
Je vais profiter de la poignée de caractères qu’il me reste pour vous souhaiter une bonne lecture et de longues heures d’expérimentation avec Python et les communications réseaux. Faites tout de même attention, ne développez pas le bot de trop, la Singularité n’est pas si loin que ça...
Jean-Michel Armand
GNU/Linux Magazine s'adresse aux professionnels et aux particuliers désireux de mieux maîtriser les techniques et problématiques liées à la programmation et à l’utilisation de solutions open source. Tous les deux mois avec ses articles techniques, la publication couvre les thématiques suivantes : programmation système, algo, bas niveau, sécurité du code, développement web...
« Et puis c'est arrivé... une porte s'est ouverte sur un monde nouveau... j'envoie un signal, il traverse les lignes téléphoniques (…). » - « The Hacker Manifesto », The Mentor, 1986
Depuis que ces lignes ont été écrites, 31 ans se sont écoulés. Et pourtant elles n'ont jamais autant été d'actualité. Le net ne cesse de grandir, de se développer, d'accoucher de nouvelles technologies et de nouvelles façons de faire communiquer différentes entités entre elles. Le SOAP a laissé la place au REST, les réseaux sociaux se diversifient, chaque jour amène son lot de nouveaux services qui offrent chacun leur API.
Maintenant que vous savez comment fonctionne un réseau et comment faire transiter des données, il est temps de l'appliquer à un cas pratique. Nous vous proposons de construire un serveur applicatif pour une application graphique et nous allons insister sur ce qui peut ou ne peut pas transiter par le réseau.
Google aime beaucoup le Python et le fait savoir. Avant même de vouloir compter dans ses rangs le créateur du langage, il mettait à la disponibilité des programmeurs Python une grande partie de leurs API. Et Google Drive n'échappe pas à la règle.