Connection à un site

Thant -  
sebsauvage Messages postés 33415 Statut Modérateur -
Bonjour,

Je ne connais pas encore bien python mais j'ai déjà fais du C.

Ce que j'aimerais faire c'est un programme qui pourrait se connecter à une adresse, télécharger certaine page.

Le souci c'est qu'il faut entrer son login et son pass entre 2
page en question : http://sd315.sivit.org/fourmix/

merci d'avance pour vos conseils et réponses
A voir également:

2 réponses

sebsauvage Messages postés 33415 Statut Modérateur 15 667
 
Hello.

Le principe:

Récupérer les champs du formulaire et construire la requete HTTP POST équivalent à l'envoi du formulaire.

Celui de l'écran de login est:
<form method="post" action="connexion.php">
  <div align="center"><center><p>Login :<input name="login" size="20" type="text"></p>
  </center></div><div align="center"><center><p>Mot de passe :<input name="password" size="20" type="password"></p>
  </center></div><div align="center"><center><p>
  </p></center></div>
  <input value="Envoyer" name="B1" type="submit"><p></p>
</form>


Ce qui fait 3 champs à envoyer en mode POST à http://sd315.sivit.org/fourmix/connexion.php
login=le login
password=le mot de passe
B1="Envoyer"

(Voir les newsgroups sur la façon de faire un POST en Python ; Note: souvent les serveurs acceptent tout simplement la requête GET équivalente, c'est plus simple ;-)

La page en retour va sûrement te renvoyer un cookie dans les entêtes HTTP (voir la doc pour les lire).
Conserve ce cookie.
Il te faudra, dans toutes les requêtes suivantes sur ce même site, fournir ce cookie dans les entêtes HTTP de tes requêtes.

ça devrait tourner... :-)

Tu peux utiliser le navigateur Firefox pour voir les différents champs des formulaires d'une page, et tu pourra également voir les cookies et leur valeur.
ça aide.
0
Thant
 
Et c'est ou qu'on trouve ce newsgroup sur la facon de faire un POST ?
0
sebsauvage Messages postés 33415 Statut Modérateur 15 667 > Thant
 
Une recherche sur http://groups.google.com devrait te donner la réponse.
(Désolé, je n'ai pas le temps de chercher.)
0
Thant > Thant
 
Désolé mais malgré ton aide j'ai rien trouvé...

Les recherches sur google ça n'a rien donné :-(
0
sebsauvage Messages postés 33415 Statut Modérateur 15 667
 
Dans la doc de Python il y a un exemple de requête POST:
http://www.python.org/doc/current/lib/node415.html

"The following example uses the "POST" method instead:

>>> import urllib
>>> params = urllib.urlencode({'spam': 1, 'eggs': 2, 'bacon': 0})
>>> f = urllib.urlopen("http://www.musi-cal.com/cgi-bin/query", params)
>>> print f.read()

"
0