Comment importer une "class" ??

Fermé
voulfka1688 Messages postés 55 Date d'inscription jeudi 15 novembre 2012 Statut Membre Dernière intervention 9 mai 2020 - Modifié par voulfka1688 le 15/11/2012 à 18:39
voulfka1688 Messages postés 55 Date d'inscription jeudi 15 novembre 2012 Statut Membre Dernière intervention 9 mai 2020 - 24 nov. 2012 à 00:01
Bonjour,
voilà, je suis débutant en VB.net et j'aimerai réaliser une action mais celle-ci s'est jusqu'a présent révélé sans succès...

Je me m'explique, lorsque l'on appui sur un bouton je voudrai qu'une Msgbox affiche un contenu précis sur un site internet. là ou il est inscrit "blablablabla"

extrait du code source de la page :

<div class="form_colonne colonneGroupe">
<p><label for="inputGF">TRUCTRUC1</label></p>
<p><input name="GF" id="inputGF" value="25"></p>
<p><a href="#ws_boite_calendrier" class="link_blue" onclick='window.open("/aide_popup.php?id=cal","aide_calendrier","toolbar=no,statusbar=yes,location=no,scrollbars=yes,resizable=yes,width=500,height=570");'">Aide à la saisie</a></p>
</div>
<div class="form_colonneBtn">
<p> </p>
<p><input type="submit" class="btn_small" value="Ok" /></p>

</div>
</form>
</div>

<div class="calendrierTitre">
<h3> Résultats de recherche </h3>
<div>Evénement2<span class="couleurOrange">25</span></div>
</div>
<p class="tructruc3" style="font-size:12px">blablablabla </p><br />


Voici ce que j'ai déjà pu faire :

Public Class Form1
Dim web As WebBrowser = New WebBrowser()
Dim var1 As String = "https://www.pagesjaunes.fr/"

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
web.Navigate(var1)
While Not web.ReadyState = WebBrowserReadyState.Complete
Application.DoEvents()
End While
Dim contenu As String = web.Document.GetElementById("class").InnerText
MsgBox(contenu)
End Sub
End Class


Mais évidement.... sa coince ...
Merci d'avance pour votre aide.

A voir également:

8 réponses

voulfka1688 Messages postés 55 Date d'inscription jeudi 15 novembre 2012 Statut Membre Dernière intervention 9 mai 2020 1
15 nov. 2012 à 21:13
up ?
0
voulfka1688 Messages postés 55 Date d'inscription jeudi 15 novembre 2012 Statut Membre Dernière intervention 9 mai 2020 1
16 nov. 2012 à 00:01
UP ??
0
lermite222 Messages postés 8724 Date d'inscription dimanche 8 avril 2007 Statut Contributeur Dernière intervention 22 janvier 2020 1 190
Modifié par lermite222 le 16/11/2012 à 10:36
Bonjour,
Semble bien que tu veux retrouver un pseudo et mot de passe !!.
CCM n'aide pas à ce genre de code.
A+


Si tu te cognes à un pot et que ça sonne creux, c'est pas forcément le pot qui est vide. ;-)(Confucius)
NOTE : Je ne répond pas aux MP pour les questions techniques.
0
voulfka1688 Messages postés 55 Date d'inscription jeudi 15 novembre 2012 Statut Membre Dernière intervention 9 mai 2020 1
16 nov. 2012 à 17:43
bonjour, tout d'abord merci d'avoir prêter attention à mon post. en ce qui est de récupérer un pseudo ou un mode de passe je doit avouer que sa ne m'a pas du tout traverser l'esprit. je m'expliquer un peu plus sur ce site en question. il est en intranet donc inaccessible depuis l'exterieur. ce site propose de saisir un "groupe" identifié par un nombre. ex : 6 ou (56). la saisie de se nombre et l'appuye sur la touche entrée fait afficher juste en dessous de cette case de saisie des information sur le groupe ex : groupe 23 demain il Ya piscine !
voilà c'est simplement cela.
0

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

Posez votre question
voulfka1688 Messages postés 55 Date d'inscription jeudi 15 novembre 2012 Statut Membre Dernière intervention 9 mai 2020 1
18 nov. 2012 à 00:11
UP
0
voulfka1688 Messages postés 55 Date d'inscription jeudi 15 novembre 2012 Statut Membre Dernière intervention 9 mai 2020 1
19 nov. 2012 à 20:35
up
0
pijaku Messages postés 12263 Date d'inscription jeudi 15 mai 2008 Statut Modérateur Dernière intervention 4 janvier 2024 2 752
Modifié par pijaku le 20/11/2012 à 09:30
Bonjour,

Je ne penses pas qu'il s'agisse d'un post pour la récupération de mdp... Qu'est ce que ces informations feraient dans une balise <p> ou même dans un élément de type "class"... Dans une base de données ok, mais pas dans du code html.
Bon, ceci étant dit.

La fonction GetElementById ne fonctionne qu'avec les .... id!
Ah bon?

Si tu veux chercher, dans ta page internet, un élément de type "class", comme dans ton exemple, il te faut une fonction du type GetElementByClass.
Mais, cette fonction n'existe pas...

Si la lecture de tutos ne te dérange pas, je t'oriente volontiers vers un tutoriel VBA, d'accord VBA n'est pas vb.net, loin s'en faut, mais qui te donneras a minima, les bases logiques pour te permettre d'avancer. C'est par ICI.

En annexe de ce tuto (ICI), tu trouveras la fonction GetElementsByClassName suivante :
Function getElementsByClassName(IEParentElement As IHTMLElement, aClassName As String, Optional JustChildren As Boolean = False) As IHTMLElement() 
'Retourne un tableau contenant les éléments de la page ayant pour Class aClasseName 
Dim aElement As IHTMLElement 
Dim FuncElements() As IHTMLElement 
Dim SourceElem As IHTMLElementCollection 
Dim iElem As Integer 
    
   'On prend en compte le lieu de recherche 
   If JustChildren Then 
       'Ici on ne tiendra compte que des enfants directs de IEParentElement 
       Set SourceElem = IEParentElement.Children 
   Else 
       Set SourceElem = IEParentElement.all 
   End If 
    
   'On boucle sur tous les éléments contenus dans SourceElem 
   For Each aElement In SourceElem 
       'On vérifie si l'élément correspond à notre recherche 
       If aElement.ClassName = aClassName Then 
           'On redimensionne notre tableau 
           'Cela semble inutile de regarder si FuncElements est un Array... 
           'Mais sans cette ligne FuncElement n'est jamais reconnu comme tel... 
           iElem = IIf(IsArray(FuncElements), UBound(FuncElements) + 1, -1) 
           ReDim Preserve FuncElements(iElem) 
           'Et on place l'élément trouvé à l'intérieur 
           Set FuncElements(UBound(FuncElements)) = aElement 
       End If 
   Next 
   'On place le tableau en retour de notre fonction 
   getElementsByClassName = FuncElements 
   'On libère l'espace mémoire occupé par notre tableau provisoire 
   Erase FuncElements 
End Function

A toi de l'adapter...
Cordialement,
Franck P
0
voulfka1688 Messages postés 55 Date d'inscription jeudi 15 novembre 2012 Statut Membre Dernière intervention 9 mai 2020 1
24 nov. 2012 à 00:01
Bonsoir, désolé de répondre si tardivement, j'essaye tout les soirs car impossible de le faire sur le temps de travail, mais j'ai beau retourné le code dans tout les sens, et je n'arrive toujours pas a un résultat.

J'avais pensé a une solution alternative, elle consiste à :
- Récupérer le code source de la page dans une variable
- Insérer la variable en question dans un fichier .txt que l'on créé
- On recherche la chaîne de caractères qu'on récupère dans une nouvelle variable
- On affiche le contenu de la variable dans une MsgBox ou un libellé

ai-je tort de raisonner de cette manière ?

en C# j'arrive a obtenir le résultat voulu depuis le fichier .txt


#include <stdio.h>
#include <string.h>
#include <stdlib.h>

#define TAILLE_MAXI_LIGNE 256
#define TAILLE_MAXI_METAR 128

int main (void)
{
FILE * fichier;
char raw_text[TAILLE_MAXI_METAR];

fichier = fopen("MONFICHIER.txt" , "r");
if (fichier != NULL)
{
char ligne[TAILLE_MAXI_LIGNE];
int ok = 0;
while (fgets(ligne , TAILLE_MAXI_LIGNE , fichier) != NULL)
{
char * recherche_sous_chaine_1;
char * recherche_sous_chaine_2;

recherche_sous_chaine_1 = strstr(ligne , "DEBUTDELACHAINE");
if (recherche_sous_chaine_1 != NULL)
{
recherche_sous_chaine_1 += 11; /* on se positionne juste après "<raw_text>" */
recherche_sous_chaine_2 = strstr(ligne , "FINDELACHAINE");
if (recherche_sous_chaine_2 != NULL)
{
int taille_metar = recherche_sous_chaine_2 - recherche_sous_chaine_1;
if ( taille_metar >= TAILLE_MAXI_METAR )
printf("metar trop long\n");
else
{
strncpy(raw_text , recherche_sous_chaine_1 , taille_metar);
raw_text[taille_metar] = '\0';
printf("%s\n" , raw_text);
}
ok = 1;
break;
}
}
}
fclose(fichier);
if ( !ok )
printf("sous-chaine(s) non trouvee(s)\n");
} else
printf("Fichier non trouve\n");

return EXIT_SUCCESS;
}




Cela fait deux semaines que je lutte, m'embrouille, essaye de comprendre mais sans succès...

Merci énormément de l'aide que vous m'apportez.
0