Python TD2



Exercice 1 Il pîaart que puor la lctreue, l'orrde des lrttees à l'iétunreir des mots n'a acnuue itnpocmare. La sulee chose qui cptmoe est que la pemièrre et la dneèirre lttree seonit à leur pclae.
Écrire un programme permettant de tester cette théorie. Il devra prendre en entrée un fichier texte (disons, pour commencer, du français en ASCII étendu 'latin-1') et mélanger aléatoirement les lettres à l'intérieur des mots en respectant la ponctuation et la mise en page. Une fois le programme fonctionnel, on étudiera la possibilité de traiter des fichiers utilisant des encodages de caractères différents.
Par exemple, le fichier harmonie.txt devra donner quelque chose comme ceci.
Tester votre programme sur un fichier plus gros, comme celui-ci. Que faudrait-il faire pour brouiller de la même manière une page html ? Un texte au format OpenOffice.org (odt ou sxw) ?


Exercice 2 Les services web (google, amazon, ebay etc.) utilisent divers protocoles pour l'échange d'informations entre applications (CORBA, SOAP, xmlrpc ...). Lorsque le protocole SOAP a été introduit, il était d'usage de tester les clients avec un serveur (qui se trouvait à l'adresse http://www.tankebolaget.se/scripts/Haddock.exe/soap/IHaddock) et qui renvoyait des injures aléatoires puisées dans le répertoire du capitaine Haddock (voir ici pour une illustration en Python). Note : Ces articles ne sont pas à lire en détail maintenant . La seule référence utile est la doc en ligne de Python.
Cette institution ayant disparu, nous avons installé un service similaire sur le serveur de l'IGM,
http://monge.univ-mlv.fr:8888
Par souci de simplicité et pour n'utiliser que les ressources natives de Python, nous avons employé le protocole xmlrpc, de sorte que l'accès au serveur ne nécéssitera que deux ou trois lignes de Python, l'une d'entre elles consistant à importer une classe du module xmlrpclib.
1) Le serveur accepte l'introspection. Découvrir ses méthodes, et les essayer.
2) Ecrire un serveur identique et le lancer sur "localhost"