Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : Création d'un fonction GetElementsByClass [ Réseau & Internet / Internet ] (scorpion322)

mardi 17 juin 2008 à 15:52:06 | Création d'un fonction GetElementsByClass

scorpion322

Bonjour

Je souhaite de créer une fonction qui GetElementsByClass(), qui permet de recuperer une partie code source en recuperant uniquement le contenu de tag choisir par rapport à la classe.

C'est à dire :

<html>
<head>
</head>
<body>
<div class="toto">Blo </div>
<div class="tata">Bla </div>
<div class="titi">Bli </div>
<div class="tata">Ble </div>
</body>
</html>

Je veux recuperer uniquement le contenu de <div class="tata"></div>

function GetElementsByClasse(const Doc: IDispatch;const Nom_tag: string ; const classename: string) : IHTMLElementCollection

La fonction resemble à getElementsByTagName en filtrant par les classes.
le problème c'est que j'ai mal à voir comment je peux créer cette fonctions

Sinon j'ai reussi à trouver la fonction getElementById qui peut etre très utile ...
http://www.delphidabbler.com/tips/56

mardi 17 juin 2008 à 17:39:19 | Re : Création d'un fonction GetElementsByClass

Francky23012301

Membre Club
Salut,

Merci de chercher avant de poster une question . Va voir le source de Cari sur les expressions régulières :
 http://www.delphifr.com/codes/MATCHESMASK-EXPRESSIONS-REGULIERES_43645.aspx

mardi 17 juin 2008 à 17:51:19 | Re : Création d'un fonction GetElementsByClass

scorpion322

Voici le debut de ma fonction
----

function GetElementsByClasse(const Doc: IDispatch;const Nom_tag: string ; const classename: string): IHTMLElementCollection;
var
Document: IHTMLDocument2;
Body: IHTMLElement2;
Tags: IHTMLElementCollection;
Tags_retour : IHTMLElementCollection;
 Tag: IHTMLElement;
I: Integer;
begin
Result := nil;
Tags_retour := nil;
Body := conv_Doc_IHTMLElement2(Doc);
 
Tags := Body.getElementsByTagName(Nom_tag);
 
for I := 0 to Pred(Tags.length) do
begin
Tag := Tags.item(I, EmptyParam) as IHTMLElement;
if AnsiSameText(Tag.className, classename) then
begin
 
// On va dire que je suis bloqué dans cette partie
// comment on peut filtrer le IHTMLElementCollection; 

 
end;
end;
Result := Tags_retour;
 
end;


-----

mercredi 18 juin 2008 à 08:38:14 | Re : Création d'un fonction GetElementsByClass

Francky23012301

Membre Club
Non mais t'es tétu toi : t'a pris la peine de regarder et d'étudier le source de Caribensila ? Il sert justement à ca. Tu es entrain de te faire chier à réinventer la roue et en plus de maniere crade

jeudi 19 juin 2008 à 19:12:58 | Re : Création d'un fonction GetElementsByClass

Shai

Francky, tu es sévère, en plus sa fonction n'a aucun rapport avec les expressions régulières mais avec l'analyse d'un document HMTL (un pas de plus et c'est ouvert à l'XML), qui te dit qu'il veut faire une recherche mais faire un parsing de HMTL pour un bot ou pour un système de test d'un site web ...

Mais, faut dire que scorpion322 n'a pas cherché beaucoup, suffit de voir ce sujet


Shai Le Troll
!! Aide via F1 !! Pensez-y !!
 
Mieux vaut se taire et paraître idiot, Que l'ouvrir et de le conf




Cette discussion est classé dans : fonction, 3c, 3e, 0a, c3


Répondre à ce message

Sujets en rapport avec ce message

fonction de "consersion" [ par jakouz ] bonjour je voudrais savoir s'il existe une fonction intégrée delphi qui me donne le chemin absolu de mon répertoire de base http (web) ? Merci d'avanc Appeler un fonction a partir d'une autre unit [ par fabiin ] Salutalors voila,g une fonction ki ce trouve dans une autre unit, mais cette unit n'est pas "lié" a une form, elle est juste comme ca pour mettre des limitation de sendtext ? [ par Xavier ] Bonjour,Comme la fonction sendtext prend en parametre un string et sachant qu'un string peut faire 2 Mo, pensez-vous qu'il est raisonnable d'utiliser prb avec dll et tableau dynamique [ par bd ] actuellement je recois en parametre d'une fonction un tableau de longueur variable. ce tableau est rempli dans la fonction de la dll.au retour dans la Retourner une chaine... [ par ELECTRORESiSTiK ] Salut,J'ai une chaine "1234567890" je cherche une fonction qui me donnerai "0987654321". Comment puis-je faire ça ? Il existe une fonction ?Merci d'av Fonction ??? [ par ELECTRORESiSTiK ] Salut, je cherche une fonction qui me permettrai de mettre un texte en forme sur une largeur de 70 caractère sans couper un mot et mettre des espaces Une fonction existe pour ça ? [ par ELECTRORESiSTiK ] Salut, je cherche une fonction qui me permettrait de mettre un texte en forme sur une largeur de 70 caractères sans couper un mot et mettre des espace déclaration d'une fonction [ par vib ] Je désire déclarer la fonction:function trouver_composant(t:string):Tcompopour quelle soit visible dans les autres unités.Je la déclare donc dans la p Fonction pour séparer des champs dans une chaine [ par belkin ] Bonjour,Existe-t-il une fonction qui permet de séparer des champs dans une chaine ?Exemple : MaVariable := '123_456.dat';Je veux séparer le 123 et 456 mot-clé inherited et les fonction [ par JesseJames ] salut, j'ai un problème qui me torture la vie, help !Ayant 2 classes, A et B, A était la super-classe et B une classe fille.la méthode (fonction) de A


Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :

Comparez les prix Nouvelle version

Photothèque Nouveau !



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,515 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.