Comment recuperer des informations d'une page web dans un fichier texte .....

PABLOCORREA Messages postés 13 Date d'inscription vendredi 20 avril 2007 Statut Membre Dernière intervention 8 janvier 2008 - 7 janv. 2008 à 21:15
PABLOCORREA Messages postés 13 Date d'inscription vendredi 20 avril 2007 Statut Membre Dernière intervention 8 janvier 2008 - 8 janv. 2008 à 20:36
Bonjour,

Tout d'abord bonne année a vous tous

Je debute en vbs et j'ai besoin de votre aide

Si je me connecte par exemple sur la page internet http://10.120.22.192 je tomberai sur la page de configuration de l'une de mes imprimantes réseau qui se trouve dans mon reseau professionnel

Le but du jeu est de recuperer en automatique dans un fichier texte plusieurs informations de mon imprimante a savoir :

   - son nom
   - son modele
   - son IP
   - son masque reseau etc etc

Toutes ses infos sont sur la page web http://10.120.22.192 

Mais comment les recupérer en sachant qu'il y a des infos que je ne souhaitent pas recuperé, et qu'il va falloir faire cela pour une centaines d'imprimantes (comment pouvoir selectionner les infos que je veux) ?

Merci d'avance pour votre aide et votre comprehension

Rq : Si j'ai posté au mauvais endroit je vous pris de bien vouloir m'en excuser, mais je pensais que ce forum était l'endroit ideal

@+

10 réponses

PCPT Messages postés 13272 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 47
7 janv. 2008 à 21:29
salut,
déplacé de VB.NET vers VBS

perso je n'accède pas à cette url....

tu dis tomber sur la page de config, c'est à dire? une page html qui liste en dure ses infos?
le question est alors de parser ta page c'est çà?

niveau code tu en es où, la récupération de la source de la page fonctionne bien?
montre-nous ce qu'il en est...
++
<hr size="2" width="100%" />Prenez un instant pour répondre à [infomsg_SONDAGE-POP3-POUR-CS_769706.aspx ce sondage] svp
0
PABLOCORREA Messages postés 13 Date d'inscription vendredi 20 avril 2007 Statut Membre Dernière intervention 8 janvier 2008
7 janv. 2008 à 21:44
Merci pour ton aide

Effectivement tu ne peux pas acceder a cette page de chez toi, mais elle contient toutes les informations d'une imprimante

Cette page permet aussi de configurer l'imprimante notament son adresse IP par exemple

Si parser veux dire traduire la page, alors oui c'est ca

Je veux recuperer pouvoir recuperer certaines infos de la page web dans un fichier texte

Au niveau code je ne peux rien te montrer car tout est au boulot

J'ai essayer une solution mais qui me convient pas trop avec
nodeList = node.getElementsByTagName("span") par exemple
0
PCPT Messages postés 13272 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 47
7 janv. 2008 à 21:51
re,

voici déjà 2 liens qui t'aideront sans doute demain...
http://www.codyx.org/snippet_extraction-chaine-caracteres-partir-occurence-separator_131.aspx#368
http://www.codyx.org/snippet_supprimer-tags-html-dans-texte-striphtml_12.aspx#96

ps : si tu valides ma réponse alors que la solution n'est pas trouvé, il risque d'y avoir peu de passage sur ton topic ;)
<hr size="2" width="100%" />Prenez un instant pour répondre à [infomsg_SONDAGE-POP3-POUR-CS_769706.aspx ce sondage] svp
0
PABLOCORREA Messages postés 13 Date d'inscription vendredi 20 avril 2007 Statut Membre Dernière intervention 8 janvier 2008
7 janv. 2008 à 21:58
Merci pour ces deux liens mais ils permettent de recuperer des infos precises a partir d'un fichier texte, mais comment fais tu pour mettre le contenu de la page html dans un fichier texte ?
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
PCPT Messages postés 13272 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 47
7 janv. 2008 à 22:18
j'sais bien.. c'est un début ^^

je ne touche pas trop à VBS....
regarde dans les sources existantes, tu drevrais trouver de quoi faire
http://www.vbfrance.com/codes_categorie/VBSCRIPT/36.aspx
<hr size="2" width="100%" />Prenez un instant pour répondre à [infomsg_SONDAGE-POP3-POUR-CS_769706.aspx ce sondage] svp
0
PABLOCORREA Messages postés 13 Date d'inscription vendredi 20 avril 2007 Statut Membre Dernière intervention 8 janvier 2008
7 janv. 2008 à 22:33
Ok merci je vais y jeter un oeil

@+
0
cs_JMO Messages postés 1854 Date d'inscription jeudi 23 mai 2002 Statut Membre Dernière intervention 24 juin 2018 27
8 janv. 2008 à 01:03
 Bonsoir à tous,

Bonsoir PCPT,

Trouvé sur forum.hardware.fr (kiki29).
Testé avec url intranet/xtranet et avec fichier .html, les zones  textes sont
enregistrées sur .txt, il suffit  de parser.

sData = GetXml("http://212.157.42.168/")
sData = HtmlToText(sData)
WriteFile "C:\MaPage.txt", sData
 
Function HtmlToText(sHtml)
    With CreateObject("htmlfile" )
        .Write sHtml
        HtmlToText = .body.innertext
    End With
End Function
 
Function GetXml(sURL)
Dim Xml
    Set Xml = CreateObject("Microsoft.XMLHTTP" )
    Xml.Open "GET", sURL
    Xml.send
    Do: wscript.sleep 10: Loop While Xml.ReadyState <> 4
    GetXml = Xml.responseText
End Function
 
Sub WriteFile(FilePath, sData)
    With CreateObject("Scripting.FileSystemObject" ).OpenTextFile(FilePath, 2, True)
        .Write sData: .Close
    End With
End Sub

jean-marc
0
PABLOCORREA Messages postés 13 Date d'inscription vendredi 20 avril 2007 Statut Membre Dernière intervention 8 janvier 2008
8 janv. 2008 à 19:09
Bonsoir,

Merci JMO pour ton code

Il marche presque a 100 %, je m'explique

Voici le code que j'utilise

sData = GetXml("http://10.120.22.182/jetdirect.htm")
sData = HtmlToText(sData)
WriteFile "C:\MaPage.txt", sData
 
Function HtmlToText(sHtml)
    With CreateObject("htmlfile" )
        .Write sHtml
        HtmlToText = .body.innertext
    End With
End Function
 
Function GetXml(sURL)
Dim Xml
    Set Xml = CreateObject("Microsoft.XMLHTTP" )
    Xml.Open "GET", sURL
    Xml.send
    Do: wscript.sleep 10: Loop While Xml.ReadyState <> 4
    GetXml = Xml.responseText
End Function
 
Sub WriteFile(FilePath, sData)
    With CreateObject("Scripting.FileSystemObject" ).OpenTextFile(FilePath, 2, True)
        .Write sData: .Close
    End With
End Sub

Quand je mets sData = GetXml("http://10.120.22.182/jetdirect.html") cela fonctionne impec

Quand je mets cela sData = GetXml("http://10.120.22.182/jetdirect.htm") cela plante

Le probleme c'est que ma page s'appelle bien jetdirect.htm

Comment faire pour résoudre mon pb ?
0
cs_JMO Messages postés 1854 Date d'inscription jeudi 23 mai 2002 Statut Membre Dernière intervention 24 juin 2018 27
8 janv. 2008 à 20:16
 Bonsoir,

J'espère ne pas dire de co..erie =>  .html = .htm
Je viens de tester avec
sData = GetXml("c:\netmeet.htm"), le .txt est bien écrit.
sData = GetXml("c:\alert_pro.html"), le .txt est bien écrit.

Essaie  peut-être avec
    'set Xml = CreateObject("Microsoft.XMLHTTP" )
    Set Xml = CreateObject("MSXML2.ServerXMLHTTP") ' seulement pour url , erreur si file disk

De même, peux-tu essayer avec un fichier disque.

jean-marc
0
PABLOCORREA Messages postés 13 Date d'inscription vendredi 20 avril 2007 Statut Membre Dernière intervention 8 janvier 2008
8 janv. 2008 à 20:36
Ba je suis d'accord avec toi htm = html, mais j'ai cherché ce soir pendant fort longtemps avant de trouver cette erreur

si tu change l'extension cela fonctionne impec, alors je ne comprends pas qu'avec toi cela fonctionne ....

J'essaie d'appliquer tes conseils demain au boulot

Merci par avance

@+
0
Rejoignez-nous