LIRE UNE PAGE HTML OU PHP POUR TROUVER UN MOT PARTICULIER

Saros Messages postés 921 Date d'inscription vendredi 20 décembre 2002 Statut Membre Dernière intervention 23 septembre 2010 - 3 juin 2003 à 17:09
Kornebrume Messages postés 35 Date d'inscription mardi 3 avril 2007 Statut Membre Dernière intervention 10 avril 2008 - 19 juin 2007 à 10:05
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/3251-lire-une-page-html-ou-php-pour-trouver-un-mot-particulier

Kornebrume Messages postés 35 Date d'inscription mardi 3 avril 2007 Statut Membre Dernière intervention 10 avril 2008
19 juin 2007 à 10:05
Bonjour à tous,

j'ai testé ce code car j'ai effectivement besoin de vérifier si une chaine de caractère se trouve ou non dans une page html.

Voici le code de ma petite appli qui est quasiment le même que celui plus haut:

Public Class Form1

    Public Function lireSource2(ByRef doc As HtmlDocument, ByVal mot As String) As Boolean
        'Parametre en entree :
        '  - doc  = HTMLDocument en provenance du WebBrowser
        '  - mot  = mot a retrouver dans la page web (HTML ou PHP)
        'Parametre en Sortie : booléen vrai si mot trouvé, faux si non


        If InStr(doc.Body.InnerHtml, mot) Then

            lireSource2 = True
        Else
            lireSource2 = False
        End If


    End Function

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

        Dim adresse As String
        adresse = TextBox1.Text
        AxWebBrowser1.Navigate(adresse)
        TextBox3.Text = lireSource2(AxWebBrowser1.Document, TextBox2.Text)

    End Sub
End Class


A la ligne If InStr(doc.Body.InnerHtml, mot) j'ai l'erreur suivante: La référence d'objet n'est pas définie à une instance d'un objet.

Pourtant je reprend le code de notre ami qui a l'air de fonctionner. Quelqu'un aurait-il une idée?

Merci à vous.

Korne
JoNasx86 Messages postés 14 Date d'inscription jeudi 19 mai 2005 Statut Membre Dernière intervention 30 décembre 2006
17 déc. 2006 à 22:57
Voici une petite modif de ton code (légère amélioration)
à la ligne 8 mettez :

InStr(1, doc.body.innerHTML, mot, 1)

Si vous voulez rechercher un mot dans la page web sans vous soucier des minuscules/majuscules (si vous recherchez "perdu" et qu'il trouve "PeRDu" il renverra VRAI)

ou alors mettez :

InStr(1, doc.body.innerHTML, mot, 0)
Si vous voulez vous souciez des minuscules/majuscules (si vous recherchez "perdu" et qu'il trouve "PeRDu" il renverra FAUX)

--------------------------------------
Syntaxe :

InStr(A, B, C, D)

Avec :

A : le n° du caractère de la chaine de caractères à partir duquel il faut commencer la recherche

B: la chaine de caractères (ici la page web) dans laquelle on rechreche une autre chaine de caractères

C: la chaine de caractères recherchée

D: 0 ou 1 --> 0: différence entre majuscules et minuscules
1: pas de différence minuscules/majuscules

Voilà! En espérant que cela vous aidera!
JoNasx86 Messages postés 14 Date d'inscription jeudi 19 mai 2005 Statut Membre Dernière intervention 30 décembre 2006
17 déc. 2006 à 22:18
mettez mot à la place de "perdu" à la 8e ligne et hop ça marche :)
econs Messages postés 4030 Date d'inscription mardi 13 mai 2003 Statut Membre Dernière intervention 23 décembre 2008 24
18 juin 2006 à 09:29
'mot' ne sert à rien dans ta fonction. Et il serait pas mal de montrer comment elle peut être appelée.
z980x Messages postés 897 Date d'inscription jeudi 6 juin 2002 Statut Membre Dernière intervention 26 juillet 2007 2
9 juin 2003 à 12:26
cs_Nox Messages postés 415 Date d'inscription mardi 3 avril 2001 Statut Membre Dernière intervention 26 avril 2008
4 juin 2003 à 01:48
Sert pas juste a HTML ou PHP

et tu n,utilise qu,une fonction de recherche... et a voir le code , effectivement tu va juste rechercher "perdu"

et ya dejas pleins de codes comme sa sur le site, et eux, en plus, surlignent le mot trouvé
Cyberdevil Messages postés 483 Date d'inscription mardi 10 juillet 2001 Statut Membre Dernière intervention 12 juillet 2006
3 juin 2003 à 17:40
ouais la description ne concorde pas avec la source
Saros Messages postés 921 Date d'inscription vendredi 20 décembre 2002 Statut Membre Dernière intervention 23 septembre 2010
3 juin 2003 à 17:09
Tu n'aurais pas modifié le code par hasard ?
Je sais pas trop, mais là, j'ai l'impression qu'il cherche le mot "perdu" et pas autre chose...
Saros
Rejoignez-nous