WN

WN (https://www.wn.se/forum/index.php)
-   Serversidans teknologier (https://www.wn.se/forum/forumdisplay.php?f=4)
-   -   Visa aktuell Pagerank (https://www.wn.se/forum/showthread.php?t=2597)

Carina Malmgren 2006-08-03 08:18

https://addons.mozilla.org/firefox/2007/
jag gillar denna, det är en extension till firefox som på varje sida du besöker visar aktuell pg

ladda hem, starta om firefox, titta i nedre högra hörnet.

martine 2006-08-03 10:09

Nja, jag har en kund som vill ha en snygg lösning för sina runt 50 domäner...

Och Firefox och ladda om är nog det sista han vill höra. Ska gå på direkten och ska funka i IE (bästa webläsaren, eller hur!?)...

Carina Malmgren 2006-08-03 13:19

ah då är jag med, jag trodde det var Du som ville ha så Du kunde kolla.
däremot sitter jag inte på nått supersvar...

ja ie är ju jääättebra *himlar med ögonen*

magic 2006-08-03 15:03

Citat:

Originally posted by martine@Aug 3 2006, 10:09
Nja, jag har en kund som vill ha en snygg lösning för sina runt 50 domäner..

det går att göra med php har gjort det själv.. dock är jag inte intereserad att ge ut min kod gratis så att du får betalt av din kund :)

jag hittade dock information hur man skrev det på php.net och tydligen finns mer info på http://www.googlecommunity.com/scripts/goo...le-pagerank.php men jag hittar inte filen de vill att man skall ladda ner.

thorsell 2006-08-03 19:58

Här verkar finnas en fungerande class för PHP:

http://www.dew-code.com/modules/newb...d=733&forum=10

eller

http://programmabilities.com/php/?id=36

martine 2006-08-03 20:44

Stort tack allihopa!
Har fått ordning på det i stort. :)

Citat:

jag hittade dock information hur man skrev det på php.net och tydligen finns mer info på http://www.googlecommunity.com/scrip...e-pagerank.php men jag hittar inte filen de vill att man skall ladda ner.
magic: Ja, det har varit problemet när jag sökt tigare med. Skripten har ofta tagits bort. Skumt!
Men jag hittade på omvägar: http://www.gaijin.at/scrphppagerank.php
som fungerar. MEN: bara på en del servrar och bara med icke-åäö-domäner. (checksummen ger olika värden på olika installationer/versioner av php - märkligt.) Nu fungerar det som magi ;)

Citat:

Originally posted by Carina Malmgren@Aug 3 2006, 13:19
ja ie är ju jääättebra *himlar med ögonen*
Carina: Du kommer undan den här gången eftersom du himlar så oskyldigt med ögonen... ;) :rolleyes:

thorsell: jag ska kika på länkarna, hinner inte nu, men verkar intressant.

Hittils har jag (för den som är intresserad) kunnat konstatera att vad man gör är att:
1. räkna ut en knivig formel för att få ett checksum på domännamnet
2. göra en search till google.com

Det kniviga är alltså att räkna ut checksummen, verkar rätt komplicerad.
Citat:

Hur svårt är det ;P
koFFiii: Det verkar som du tycker detta är lätt som en plätt: :blink:
Du kanske kunde upplysa oss om hur uträkning aritmetiskt går till?

Jan Eriksson 2006-08-03 22:06

http://forums.digitalpoint.com/showthread.php?t=61596

Koden finns lite överallt på nätet

Jan Eriksson 2006-08-04 13:34

Byggde ett verktyg i .NET som kan kolla Googles PR. Just nu kollar den bara en URL åt gången men kan tänka mig att bygga den vidare så att den läser in tex en textfil med flera URLer.

Är någon intresserad av detta? Hur vill ni att den ska fungera?

martine 2006-08-04 23:37

Citat:

Originally posted by Jan Eriksson@Aug 3 2006, 22:06
Koden finns lite överallt på nätet
Ja, det verkar som det är samma kodsnutt som är inbyggd i alla skript som har länkats här. Det verkar i alla fall komma från ett perl-skript från början...
http://www.everyscript.de/PRank.htm

För den som är intresserad, för att räkna ut checksummen går det till som följer (i något komprimerad/optimerad form) med php:
Kod:

function uShiftRight($x,$y){
        if(0x80000000&$x) return ($x>>1 & 0x7FFFFFFF | 0x40000000) >> --$y; else return $x >> $y;
}

function urlCheckSum($url) {
        $shifts = array(13,8,13,12,16,5,3,10,15);
        $a = $b = 0x9E3779B9;
        $c = 0xE6359A60;
        $k = 0;
        $len=strlen($url);
        while($len>=12){
 $a += ord($url{$k++}) + (ord($url{$k++})<<8) + (ord($url{$k++})<<16) + (ord($url{$k++})<<24);
 $b += ord($url{$k++}) + (ord($url{$k++})<<8) + (ord($url{$k++})<<16) + (ord($url{$k++})<<24);
 $c += ord($url{$k++}) + (ord($url{$k++})<<8) + (ord($url{$k++})<<16) + (ord($url{$k++})<<24);
 $n=0;
 while($n<9) {
        $a = ($a-$b-$c) ^ uShiftRight($c,$shifts[$n++]);
  $b = ($b-$a-$c) ^ $a<<$shifts[$n++];
  $c = ($c-$a-$b) ^ uShiftRight($b,$shifts[$n++]);
 }
 $len -= 12;
        }
        $c += strlen($url);
        switch($len){
 case 11: $c += ord($url{$k+10}) << 24;
 case 10: $c += ord($url{$k+9}) << 16;
 case 9: $c += ord($url{$k+8}) << 8;
 case 8: $b += ord($url{$k+7}) << 24;
 case 7: $b += ord($url{$k+6}) << 16;
 case 6: $b += ord($url{$k+5}) << 8;
 case 5: $b += ord($url{$k+4});
 case 4: $a += ord($url{$k+3}) << 24;
 case 3: $a += ord($url{$k+2}) << 16;
 case 2: $a += ord($url{$k+1}) << 8;
 case 1: $a += ord($url{$k});
        }
        $n=0;
        while($n<9) {
 $a = ($a-$b-$c) ^ uShiftRight($c,$shifts[$n++]);
        $b = ($b-$a-$c) ^ $a<<$shifts[$n++];
        $c = ($c-$a-$b) ^ uShiftRight($b,$shifts[$n++]);
        }
        return sprintf("6%u",$c);
}

Det är bara att kalla urlCheckSum() med domännamnet.


Alla tider är GMT +2. Klockan är nu 11:50.

Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson