J’ai passé un quality time
avec Vinc17 à faire du GreaseMonkey et je voulais stocker ici le code qui nous à permis de faire de bons tricks.
Pour parser du html genre tagsoup, l’idée est d’utiliser le webservice de tidy puis de le parser comme du XML et donc de profiter de toutes les joyeusetées dispo
var murl = "http://cgi.w3.org/cgi-bin/tidy?docAddr=" + escape(realurl) + '&forceXML=on';
GM_xmlhttpRequest({
method: 'GET',
url: murl,
onload: function(responseDetails) {
var xmlString = responseDetails.responseText;
var oParser = new DOMParser();
var xmlDoc = oParser.parseFromString(xmlString, "text/xml");
var lingo = xmlDoc.evaluate("//h:a[starts-with(@href,'/title/tt')]",xmlDoc , nsResolver, XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE, null).snapshotItem(0);
}
});
function nsResolver(what) {
if (what == 'h') {
return 'http://www.w3.org/1999/xhtml';
}
}