| |
Savez-vous bien utiliser les outils de mesure d'audience ? Effectuez-vous un calcul de ROI (Retour sur investissement) pour savoir comment améliorer vos campagnes emarketing ? Savez-vous utiliser les bons outils pour booster votre taux de transformation ? La formation Web Analytics de Ranking Metrics, présentée par un expert reconnu officiellement par Google Analytics, vous apportera les réponses à toutes vos questions ! ===> Informations et inscriptions.
|
Voir le sujet précédent :: Voir le sujet suivant
|
| Auteur |
Message |
| |
|
syrx20 WRInaute occasionnel

Inscrit le: 12 Aoû 2005 Messages: 175
|
Posté le : Lun Nov 19, 2007 12:37 Sujet du message: Récupération du PR d'une page |
|
|
Le script de récupération du PageRank que j'utilisais ne fonctionne plus.
Est ce quelqu'un en aurait un qui marche depuis la mise à jour du PR ?
Merci |
|
| |
|
 |
acamar WRInaute accro

Inscrit le: 27 Nov 2005 Messages: 1433 Localisation: ma
|
Posté le : Lun Nov 19, 2007 13:15 Sujet du message: Récupération du PR d'une page |
|
|
Tiens celui là qui marche sur tout les hebergeur (OVH compris) peut être aussi pour Free, et genre lui même le graphique semblable au PR affiché dans les répertoires de Google.. juste un petit problème j'ai pas su comment l'intégrer car il pas une image mais du code html sinon il est très fiable :
| Code: |
<?php
//PageRank Lookup v1.1 by HM2K (update: 31/01/07)
//based on an alogoritham found here: http://pagerank.gamesaga.net/
//settings - host and user agent
$googlehost='toolbarqueries.google.com';
$googleua='Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.0.6) Gecko/20060728 Firefox/1.5';
//convert a string to a 32-bit integer
function StrToNum($Str, $Check, $Magic) {
$Int32Unit = 4294967296; // 2^32
$length = strlen($Str);
for ($i = 0; $i < $length; $i++) {
$Check *= $Magic;
//If the float is beyond the boundaries of integer (usually +/- 2.15e+9 = 2^31),
// the result of converting to integer is undefined
// refer to http://www.php.net/manual/en/language.types.integer.php
if ($Check >= $Int32Unit) {
$Check = ($Check - $Int32Unit * (int) ($Check / $Int32Unit));
//if the check less than -2^31
$Check = ($Check < -2147483648) ? ($Check + $Int32Unit) : $Check;
}
$Check += ord($Str{$i});
}
return $Check;
}
//genearate a hash for a url
function HashURL($String) {
$Check1 = StrToNum($String, 0x1505, 0x21);
$Check2 = StrToNum($String, 0, 0x1003F);
$Check1 >>= 2;
$Check1 = (($Check1 >> 4) & 0x3FFFFC0 ) | ($Check1 & 0x3F);
$Check1 = (($Check1 >> 4) & 0x3FFC00 ) | ($Check1 & 0x3FF);
$Check1 = (($Check1 >> 4) & 0x3C000 ) | ($Check1 & 0x3FFF);
$T1 = (((($Check1 & 0x3C0) << 4) | ($Check1 & 0x3C)) <<2 ) | ($Check2 & 0xF0F );
$T2 = (((($Check1 & 0xFFFFC000) << 4) | ($Check1 & 0x3C00)) << 0xA) | ($Check2 & 0xF0F0000 );
return ($T1 | $T2);
}
//genearate a checksum for the hash string
function CheckHash($Hashnum) {
$CheckByte = 0;
$Flag = 0;
$HashStr = sprintf('%u', $Hashnum) ;
$length = strlen($HashStr);
for ($i = $length - 1; $i >= 0; $i --) {
$Re = $HashStr{$i};
if (1 === ($Flag % 2)) {
$Re += $Re;
$Re = (int)($Re / 10) + ($Re % 10);
}
$CheckByte += $Re;
$Flag ++;
}
$CheckByte %= 10;
if (0 !== $CheckByte) {
$CheckByte = 10 - $CheckByte;
if (1 === ($Flag % 2) ) {
if (1 === ($CheckByte % 2)) {
$CheckByte += 9;
}
$CheckByte >>= 1;
}
}
return '7'.$CheckByte.$HashStr;
}
//return the pagerank checksum hash
function getch($url) { return CheckHash(HashURL($url)); }
//return the pagerank figure
function getpr($url) {
global $googlehost,$googleua;
$ch = getch($url);
$fp = fsockopen($googlehost, 80, $errno, $errstr, 30);
if ($fp) {
$out = "GET /search?client=navclient-auto&ch=$ch&features=Rank&q=info:$url HTTP/1.1\r\n";
//echo "<pre>$out</pre>\n"; //debug only
$out .= "User-Agent: $googleua\r\n";
$out .= "Host: $googlehost\r\n";
$out .= "Connection: Close\r\n\r\n";
fwrite($fp, $out);
//$pagerank = substr(fgets($fp, 128), 4); //debug only
//echo $pagerank; //debug only
while (!feof($fp)) {
$data = fgets($fp, 128);
//echo $data;
$pos = strpos($data, "Rank_");
if($pos === false){} else{
$pr=substr($data, $pos + 9);
$pr=trim($pr);
$pr=str_replace("\n",'',$pr);
return $pr;
}
}
//else { echo "$errstr ($errno)<br />\n"; } //debug only
fclose($fp);
}
}
//generate the graphical pagerank
function pagerank($url,$width=40,$method='style') {
if (!preg_match('/^(http:\/\/)?([^\/]+)/i', $url)) { $url='http://'.$url; }
$pr=getpr($url);
$pagerank="PageRank: $pr/10";
//The (old) image method
if ($method == 'image') {
$prpos=$width*$pr/10;
$prneg=$width-$prpos;
$html='<img src="http://www.google.com/images/pos.gif" width='.$prpos.' height=4 border=0 alt="'.$pagerank.'"><img src="http://www.google.com/images/neg.gif" width='.$prneg.' height=4 border=0 alt="'.$pagerank.'">';
}
//The pre-styled method
if ($method == 'style') {
$prpercent=100*$pr/10;
$html='<div style="position: relative; width: '.$width.'px; padding: 0; background: #D9D9D9;"><strong style="width: '.$prpercent.'%; display: block; position: relative; background: #5EAA5E; text-align: center; color: #333; height: 4px; line-height: 4px;"><span></span></strong></div>';
}
$out='<a href="'.$url.'" title="'.$pagerank.'">'.$html.'</a>';
return $out;
}
//if ((!isset($_POST['url'])) && (!isset($_GET['url']))) { echo '<form action="" method="post"><input name="url" type="text"><input type="submit" name="Submit" value="Get Pagerank"></form>'; }
if (isset($_REQUEST['url'])) { echo pagerank($_REQUEST['url']); }
?> |
Exemple : http://www.milafat.net/pagerank/display.php?url=http://www.webrankinfo.com |
|
| |
|
 |
zeb WRInaute accro

Inscrit le: 05 Déc 2004 Messages: 1002
|
Posté le : Lun Nov 19, 2007 17:23 Sujet du message: Récupération du PR d'une page |
|
|
pour un affichage dans les deux modes possibles :
| Code: |
if (isset($_REQUEST['url'])) { echo pagerank($_REQUEST['url'],40,'style').'<br/><br/>'; }
if (isset($_REQUEST['url'])) { echo pagerank($_REQUEST['url'],40,'image').'<br/><br/>'; } |
(en fin du script)
sinon pour avoir une image (en fait deux images qui en forment une) il faux bidouiller la fonction pagerank($url,$width=40,$method='style')
| Code: |
<img src="http://www.google.com/images/pos.gif" width=16 height=4 border=0 alt="PageRank: 4/10">
<img src="http://www.google.com/images/neg.gif" width=24 height=4 border=0 alt="PageRank: 4/10"> |
ça marche chez free aussi |
|
| |
|
 |
zeb WRInaute accro

Inscrit le: 05 Déc 2004 Messages: 1002
|
Posté le : Lun Nov 19, 2007 21:40 Sujet du message: Récupération du PR d'une page |
|
|
marche plus chez free ? ... ? mais OK chez 1&1
bizarre car testé il y a qque heures ça tournait parfaitement. |
|
| |
|
 |
acamar WRInaute accro

Inscrit le: 27 Nov 2005 Messages: 1433 Localisation: ma
|
Posté le : Lun Nov 19, 2007 21:47 Sujet du message: Récupération du PR d'une page |
|
|
J'ai même bidouiller ceci pour un affichage classique en images du PR
| Code: |
//The classic method
if ($method == 'classic') {
$prpos=$width*$pr/10;
$prneg=$width-$prpos;
$html='<img border="0" src="img/pr'.$pr.'.gif" alt="'.$pagerank.'">'; |
Sinon pour l'autre bidouille, je pige encore pas.. parce que moi.. PHP.. tu vois...
Pour ce qui est de Free ces denier temps c'est du n'importe quoi.. j'ai même pas pu parvenu à me connecter en FTP pour essayer le script du coup j'ai abandonné... |
|
| |
|
 |
| |
|
|
|
|
Autres sujets de discussion :
|
|