Forums : Extensions

Aller à la discussion :  Plus récente Plus ancienne

Aller à la page :  1 2

# taille des liens proportionelle au pagerank

Envoyé par : kifffkifff

Date : 11/06/2007 02:36

Bonjour,

je souhaite créer une extension qui attribut une taille aux liens proportionnellement à leur pagerank. En gros le script repère chaque lien, effectue une requete Google qui retourne le pagerank et donne à chaque lien un attribut style

var taille="font-size=:"(pagerank*10)+"px";
liens[i].setAttribute("style",taille);

J'ai trouvé une extension qui calcule le pagerank de la page en cours, et l'affiche en bas de la fenêtre pagerank status. Il doit y avoir moyen de l'adapter mais je ne sais trop de quelle manière car je suis un piètre programmeur.

J'ai déjà passé énormement de temps là dessus (avant de trouver cette extension) en utilisant notamment des scripts php + dom javascript plus requettes ajax mais là je me sens démuni cacr je n'y connais rien en XUL donc j'ai vraiment besoin de votre aide. Merci à tous d'avance.

# Re: taille des liens proportionelle au pagerank

Envoyé par : thefab

Date : 11/06/2007 17:06

Super ces 20 pages de code qui font que l'on a absolument aucune envie de lire le message... A part ça c'est quoi la question ?

# Re: taille des liens proportionelle au pagerank

Envoyé par : kifffkifff

Date : 11/06/2007 17:12

Désolé mais sur les forums en général le code est placé dans un div avec une taille et un overflow:auto; À part ça je souhaite créer une extension qui, à la manière d'un tagcloud, donne une taille aux liens des pages consultées, proportionelle à leur pagerank. J'avais trouvé le script ci-dessus dans une extension qui indique le pagerank dans la barre d'état de Firefox. J'aimerais votre aide pour l'adapter. Voilà tout.

# Re: taille des liens proportionelle au pagerank

Envoyé par : thefab

Date : 11/06/2007 18:15

Désolé mais sur les forums en général le code est placé dans un div avec une taille et un overflow:auto;

C'est pour cela qu'il existe une option "Prévisualiser"

Oui j'avais compris le but mais la question c'est quoi ? Est-ce que tu sais déjà créer une extension ? Est-ce que tu sais modifier la page HTML en cours ? Est-ce que tu sais faire des requêtes vers le serveur (XMLHttpRequest) ?

Sinon il faut commencer par lire ceci Extensions

# Re: taille des liens proportionelle au pagerank

Envoyé par : kifffkifff

Date : 11/06/2007 23:54

J'ai suivi un tutoriel pour extensions FF, je sais écrire mon nom dans la barre d'état :)

Sinon je m'y connais un peu en javascript :

— récupérer les liens par getElementsByTagName("a"), en extraire les attributs, faire une requete via httpxmlrequest vers un script php qui me renvoie le pagerank (script que j'ai trouvé). Je dois améliorer ce script pour éviter de faire une requete par lien (surtout que je suis ne suis pas asynchrone).

— Sinon côté php faire un fopen pour récupérer une page web. J'ai utilisé une expression régulière pour ajouter une barre d'adresse dans la page chargée. Mais je n'aime pas trop ce côté "mise en abime", je préfèrerais donc utiliser le navigateur directement. De plus ça m'oblige à reprendre tous les href et url pour les faire pointer au bon endroit.

Voilà

# Re: taille des liens proportionelle au pagerank

Envoyé par : thefab

Date : 12/06/2007 01:01

Je dois améliorer ce script pour éviter de faire une requete par lien

Je ne vois pas comment faire autrement. Chaque lien a un pagerank différent il faudra bien faire une requête par lien, tu peux bien faire une seule requête vers le script PHP pour qu'il te retourne tous les pagerank en une fois mais le script PHP devra quand même faire autant de requête qu'il y a de liens (ou alors j'ai loupé quelque chose).

Il me semble que tu as tout pour faire ton extension, récupérer les liens et faire une requête pour obtenir le pagerank. Il te manque uniquement la manière de modifier les liens, c'est bien ça ? Ceci devrait t'aider: Comment faire pour modifier le contenu HTML.

Désolé mais sur les forums en général le code est placé dans un div avec une taille et un overflow:auto;

Tu peux aussi utiliser un pastebin http://xulfr.pastebin.com/

# Re: taille des liens proportionelle au pagerank

Envoyé par : kifffkifff

Date : 12/06/2007 17:27

je suis parti de l'extension pagerankstatus, en l'installant dépaqueté. J'ai ensuite enlevé tout ce qui ne me servait à rien pour ne garder juste l'essentiel. Mais là je bloque : http://pastebin.ca/561711 la boucle de la fonction initPageRank() ne s'execute qu'une seule fois, je crois que c'est la requete XMLHttprequest qui bloque le truc. Merveilleux les pastebin je ne connaissais pas.

# Re: taille des liens proportionelle au pagerank

Envoyé par : thefab

Date : 12/06/2007 19:12

gXMLHttpRequest est une variable globale ? Je sais pas si ça influence quelque chose mais je pense que ça pourrait être la cause.

Sinon quand tu ouvres la requête gXMLHttpRequest.open("GET", querystring); tu ne spécifies pas le troisième paramètre, peut-être qu'elle s'effectue en asynchrone par défaut ? Essaye:

gXMLHttpRequest.open("GET", querystring, false);

# Re: taille des liens proportionelle au pagerank

Envoyé par : kifffkifff

Date : 12/06/2007 20:39

gXMLHttpRequest est bien une variable globale. Le problème semble venir de l'appel de fonction GoogleCH ligne 187 sur le pastebin plus haut:

var gch = GoogleCH(strord(reqgr));

En effet quand en commentant les lignes de code j'ai remarqué que la boucle ne s'éffectuait qu'une seule fois à partir de cette ligne. Je ne vois vraiment pas pourquoi...

EDIT : c'est peut être la fonction strord qui renvoie un tableau du code ASCII de tous les caractères : en remplaçant le truc ci-dessus par :

var gch = strord(reggr);
// suite commentée

ça s'arrête à une fois également.

EDIT 2 : J'ai résolu le problème ci-dessus, il s'agissait de la variable i utilisée dans plusieurs fonctions. Je l'ai donc remplacée par j. Pour autant le problème n'est pas résolu, le XMLHttpRequest ne fonctionne toujours pas.

# Re: taille des liens proportionelle au pagerank

Envoyé par : kifffkifff

Date : 13/06/2007 00:46

Mise à jour du script : http://pastebin.ca/562854 Marche parfaitement sur un fichier composé uniquement de liens type "http://www..." mais le script s'arrête dès qu'il tombe sur une ancre. Il faudrait peut-être tester les url avant de faire la requete ?

Aller à la page :  1 2

Il n'est plus possible de poster des messages dans ce forum.


Copyright © 2003-2013 association xulfr, 2013-2016 Laurent Jouanneau - Informations légales.

Mozilla® est une marque déposée de la fondation Mozilla.
Mozilla.org™, Firefox™, Thunderbird™, Mozilla Suite™ et XUL™ sont des marques de la fondation Mozilla.