Bonjour,
Je souhaitais récupérer des informations 'noyées' dans une page HTML.
Par exemple, sur la page j'ai un tableau:
<tr>
<td id="r12"> produit </td>
<td> ... <td/>
<td> prix <td/>
<tr/>
et je voudrais récupérer le nom du produit et le prix.
J'ai ai écrit un script (exécuté avec GreaseMonkey) qui marche nickel lorsque j'arrive sur la page en question.
var cellProduit = document.getElementById("r12") ;
var textProduit = cellProduit .textContent;
puis j'ai une boucle pour récupérer le prix
Mais mon but serait d'avoir le prix affiché sur la status-bar de firefox => via extension.
=> comment faire pour que je ne sois pas obligé de me rendre sur la page...
Est-il possible de modifier la propriété document pour qu'elle s'applique sur une URL donnée ?
N'y arrivant pas et ne trouvant pas de réponse, j'ai essayé une autre méthode inspirée de quelques exemples trouvés sur le net (je ne donne que quelques instructions ci-dessous):
http_request.open('GET', url + parameters, true);
var xmlobject = http_request.responseText;
=> je ne peux pas utiliser responseXML car le site ne le permet pas.
=> responseText renvoit toute la page HTML.
Je ne vois pas comment traiter ce bloc d'info (à part avec des substr, ...).
Quelqu'un a-t'il une idée sur la manière de s'y prendre ?
Merci d'avance
Message envoyé avec : Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.8.0.3) Gecko/20060426 Firefox/1.5.0.3
[résolu] Parser une page HTML
[résolu] Parser une page HTML
Dernière modification par Olivier le 11 mai 2006, 23:04, modifié 1 fois.
Des idées au pif pour ruser.
Créer sur la page une iframe cachée (style display: none), utiliser innerHTML pour le garnir du source HTML que tu as reçue, le DOM doit alors y être accessible.
Ou directement open, write, close, à la place de innerHTML.
Il est peut être possible (aucune idée, faut essayer) de créer l'iframe, et de ne pas l'insérer (ie ne pas utiliser appendChild), son DOM est peut être quand même accessible.
Sinon, créer un nouveau document, en mémoire, (document.implementation.createDocument), et se servir de range.createContextualFragment pour y insérer le source HTML reçu.
Pas simple...
Créer sur la page une iframe cachée (style display: none), utiliser innerHTML pour le garnir du source HTML que tu as reçue, le DOM doit alors y être accessible.
Ou directement open, write, close, à la place de innerHTML.
Il est peut être possible (aucune idée, faut essayer) de créer l'iframe, et de ne pas l'insérer (ie ne pas utiliser appendChild), son DOM est peut être quand même accessible.
Sinon, créer un nouveau document, en mémoire, (document.implementation.createDocument), et se servir de range.createContextualFragment pour y insérer le source HTML reçu.
Pas simple...
Qui est en ligne ?
Utilisateurs parcourant ce forum : Aucun utilisateur inscrit et 1 invité