17.12.2012 Views

Programmation PYTHON - Zenk - Security - Repository

Programmation PYTHON - Zenk - Security - Repository

Programmation PYTHON - Zenk - Security - Repository

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

258<br />

La bibliothèque standard<br />

TROISIÈME PARTIE<br />

urlopen(url [, data]) -> objet de type fichier<br />

Ouvre l’URL pointée par url et renvoie un objet de type fichier, qui possède deux<br />

méthodes supplémentaires par rapport à un objet file classique. geturl(), qui renvoie<br />

l’URL, et info(), qui renvoie un dictionnaire contenant des métadonnées concernant<br />

la ressource ouverte.<br />

url peut être un objet string qui pointe directement sur la ressource, comme la version<br />

du module urllib, mais aussi un objet Request, qui peut contenir des informations<br />

de requêtage plus étendues.<br />

Lecture d’une page web CPS<br />

>>> import urllib2<br />

>>> result = urllib2.urlopen('http://localhost:8080/cps')<br />

>>> for line in result.readlines():<br />

... print line[:-1]<br />

...<br />

<br />

<br />

<br />

<br />

<br />

CPS Portal<br />

<br />

...<br />

<br />

<br />

Pour certaines ressources HTTP, data peut contenir des données à envoyer au serveur.<br />

Ces données doivent être au format application/x-www-form-urlencoded qui<br />

est obtenu en appelant url.urlencode() avec un mapping. Cette fonction forme une<br />

chaîne de requête cle0=valeur0&cle1=valeur1&..., similaire à celle que l’on peut<br />

retrouver sur certaines URL. urlopen() concatène data à url au moment de l’appel.<br />

Création d'une chaîne application/x-www-form-urlencoded<br />

>>> import urllib<br />

>>> data = {'clientno': '12', 'theme': 13}<br />

>>> urllib.urlencode(data)<br />

'theme=13&clientno=12'

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!