Bonjour,
Je développe en python sous Linux et je souhaiterais récupérer une liste de nom d'utilisateur, de machine et d'adresse IP disponible sur un site sur l'intranet de mon boulot, site internet qui dessert la page d'OCS pour ceux qui connaissent (un outils d'inventaire des machines ...)
Voici mon source :
import mechanize,sys
sys.path.append('/home/****/Bureau/BeautifulSoup-3.0.7a')
from BeautifulSoup import BeautifulSoup
br = mechanize.Browser()
br.open('http://****/ocsreports/index.php?av=1&multi=&c=&a=&lang=french')
br.select_form(nr=0)
br.form.set_value('****', name='login')
br.form.set_value('****', name='pass')
br.submit()
# J'entre le mot de passe pour me connecter à la page d'OCS jusque là pas de soucis
#Je veux voir toute les machines du parc et j'affiche 100 machines par page
br.follow_link(url='index.php?lareq=Toutes+les+machines')
br.select_form(nr=1)
br.form.set_value(["100"], name='pcparpage')
br.select_form(nr=2)
br.form.set_value(["Adresse IP"],name='newcol') #Ici je souhaite ajouter une colonne adresse IP
Voici un moyen de vérifier que la "selection de forme" s'est bien faite
In [52]: for i in br.forms():
....: print i
....:
<req2 POST http://glpi.odb.fr/ocsreports/index.php application/x-www-form-urlencoded
<HiddenControl(lareq=Toutes les machines) (readonly)>>
<pcp GET http://glpi.odb.fr/ocsreports/index.php application/x-www-form-urlencoded
<HiddenControl(lareq=Toutes les machines) (readonly)>
<HiddenControl(key=100) (readonly)>
<HiddenControl(pcparpage=100) (readonly)>
<SelectControl(pcparpage=[5, 10, 15, 20, 50, *100])>>
<addCol GET http://glpi.odb.fr/ocsreports/index.php application/x-www-form-urlencoded
<HiddenControl(lareq=Toutes les machines) (readonly)>
<HiddenControl(key=100) (readonly)>
<HiddenControl(pcparpage=100) (readonly)>
<SelectControl(newcol=[Ajouter colonne, *Adresse IP, Bdate, Description, Domaine, Fabricant, Fabricant du BIOS, Fid?lit?, Lastcome, Mod?le, Nombre de processeurs, Num?ro de s?rie, Propri?taire, Qualit?, Service pack, Soci?t?, Swap, Type d'agent, Type de processeur, Userdomain, Version BIOS, Version du syst?me, Winprodid, Winprodkey])>
<SubmitControl(resetcolumns=Reset) (readonly)>>
Vous noterez la petite étoile devant Adresse IP.
page1 = br.submit().read()
page2=br.follow_link(url='index.php?&lareq=Toutes+les+machines&key=100&pcparpage=100&page=-2').read()
Le problème c'est que quand je submit, je n'ai aucune adresse IP dans page1.
Merci de bien vouloir m'éclairer.