Real-time ranking of keywords entered on search engines Monitors all queries and lists last queries and top 10 File Name : keywordranking.hta Requirement : IE6 Author : Jean-Luc Antoine Submitted : 09/12/2003 Category : HTA Remember : The file extension has to be *.HTA 将下面的代码保存为keyword.hta即可。保存时注意编码,推荐用utf8格式。
复制代码 代码如下:<html><head><title>Keyword Ranking, (c) Jean-Luc Antoine</title><HTA:APPLICATION APPLICATIONNAME=\”Search Engine Tools\”BORDER=\”thick\”BORDERSTYLE=\”normal\”CAPTION=\”yes\” CONTEXTMENU=\”yes\”INNERBORDER=\”yes\” MAXIMIZEBUTTON=\”yes\” MINIMIZEBUTTON=\”yes\”NAVIGABLE=\”no\” SCROLL=\”yes\” SCROLLFLAT=\”no\”SELECTION=\”yes\”SHOWINTASKBAR=\”yes\” SINGLEINSTANCE=\”no\”SYSMENU=\”yes\” VERSION=\”0.3\” WINDOWSTATE=\”normal\”><script language=vbscript>Option Explicit\’Versions :\’v0.3Queries and words : simultaneously ranking\’v0.2New look, options, many SE\’Multilingual system\’v0.1First draft, keyword rank and last queries\’Todo : \’Gérer systématiquement à la fois Keyword et Phrase\’Sur les keyword, permettre de zoomer (showmodeless) sur les phrases contenant le keyword pour connaître le ranking des variations\’Lister en permanence les mots-clefs monitorés avec leur occurence et permettre le même zoom\’Mettre en gras les keywords monitorés\’Temps de mesure\’Afficher pourcentage en plus du nb d\’occurences\’Monitorer X mots-clefs et leur apparition/fréquence relative\’Faire bouton de refresh manuel si ça se bloque (location.reload())\’gérer les fenêtres lancées offline et non pas inline (intercepter events par showmodeless dialog)\’identifier nb de pages retournées par requete et indice de concurrence\’Permettre de sauver le résultat\’http://wordtracker.com/newsinput.txt
Const C_MaxList=20\’### Change this, predefined for TOP 20Dim d,dw,a(),b(),f(),g(),iRedim a(C_MaxList)Redim b(C_MaxList)For i=0 to C_MaxList-1a(i)=0\’Nb d\’occurencesb(i)=\”\”\’ValueNextRedim f(C_MaxList)Redim g(C_MaxList)For i=0 to C_MaxList-1f(i)=0\’Nb d\’occurencesg(i)=\”\”\’ValueNextSet d=CreateObject(\”Scripting.Dictionary\”)\’queriesd.CompareMode=1\’vbTextCompareSet dw=CreateObject(\”Scripting.Dictionary\”)\’wordsdw.CompareMode=1\’vbTextCompare
sub go(SE)Dim s,x,sq,s2,swSelect Case SECase 0s=RegExpTest(\”pursuit\\?query=.*?&\”, lycosfr.document.body.innerHTML,15)Case 1s=RegExpTest(\”pursuit\\?query=.*?&\”, lycosde.document.body.innerHTML,15)Case 2s=RegExpTest(\”[^a-z]q=.*?&\”, fireballde.document.body.innerHTML,4)Case 3s=RegExpTest(\”\\?qkw=.*?\”\”\”, metacrawler.document.body.innerHTML,6)Case 4s=RegExpTest(\”return.cool\\?query=.*?\”\”\”, kanoodle.document.body.innerHTML,19)Case 5s=RegExpTest(\”/w.galaxy.com/b/q\\?k.*?\”\”\”, galaxy.document.body.innerHTML,21)Case Elsemsgbox \”Unknown S.E. : \” & SEEnd Selects=\”<pre>\” & s & \”</pre>\”
sq=\”\”For x=0 to C_MaxList-1If a(x)>0 Then sq=\”<tr style=\’background-color:#eeeeee;\’><td>\” & a(x) & \”</td><td>\” & b(x) & \”</td></tr>\” & sqNextsq=\”<table style=\’border:1px solid #222222;\’><tr style=\’background-color:#dddddd;\’><th>Total</th><th>\” & Disp(5) & \”</th></tr>\” & sq & \”</table>\”
sw=\”\”For x=0 to C_MaxList-1If f(x)>0 Then sw=\”<tr style=\’background-color:#eeeeee;\’><td>\” & f(x) & \”</td><td>\” & g(x) & \”</td></tr>\” & swNextsw=\”<table style=\’border:1px solid #222222;\’><tr style=\’background-color:#dddddd;\’><th>Total</th><th>\” & Disp(9) & \”</th></tr>\” & sw & \”</table>\”
s2=\”<b>\” & Disp(7) & \” :</b> \” & d.Count & \”<br>\”s2=s2 & \”<table><tr><td valign=top>\”s2=s2 & \”<b>Top \” & C_MaxList & \” – \” & Disp(5) & \”</b><br>\” & sq & \”</td><td valign=top>\”s2=s2 & \”<b>Top \” & C_MaxList & \” – \” & Disp(9) & \”</b><br>\” & sw & \”</td><td valign=top>\”s2=s2 & \” <b>\” & Disp(6) & \” :</b>\” & ss2=s2 & \”</td></tr></table>\”MaListe.InnerHTML=s2End Sub
Function RegExpTest(patrn, strng, Pos)Dim RetStr,regEx, regExw, Match,Matchw,Matches,Matchesw,Matchesws,k,i,j,x,s,wSet regEx=New RegExpSet regExw=New RegExpregEx.Pattern=patrnregExw.Pattern=\”\\w+\”regEx.IgnoreCase=True \’ Set case insensitivity.regExw.IgnoreCase=TrueregEx.Global=True \’ Set global applicability.regExw.Global=TrueSet Matches=regEx.Execute(strng) \’ Execute search.RetStr=\”\”For Each Match in Matchess=Mid(Match.Value,Pos)s=Left(s,Len(s)-1)s=Replace(s,\”+\”,\” \”)s=Replace(s,\”%20\”,\” \”)s=trim(s)If s<>\”\” Thens=Replace(s,\”%21\”,\”!\”):s=Replace(s,\”%22\”,chr(34))s=Replace(s,\”%23\”,\”#\”):s=Replace(s,\”%25\”,\”%\”)s=Replace(s,\”%26\”,\”&\”):s=Replace(s,\”%27\”,\”\’\”)s=Replace(s,\”%28\”,\”(\”):s=Replace(s,\”%29\”,\”)\”)s=Replace(s,\”%2A\”,\”*\”):s=Replace(s,\”%2B\”,\”+\”)s=Replace(s,\”%2C\”,\”,\”):s=Replace(s,\”%2F\”,\”/\”)s=Replace(s,\”%3A\”,\”:\”)s=Replace(s,\”%3D\”,\”=\”)s=Replace(s,\”%3F\”,\”?\”)s=Replace(s,\”%40\”,\”@\”):s=Replace(s,\”%B4\”,\”´\”)s=Replace(s,\”%C4\”,\”Ä\”):s=Replace(s,\”%D6\”,\”Ö\”)s=Replace(s,\”%DC\”,\”Ü\”):s=Replace(s,\”%DF\”,\”ß\”)s=Replace(s,\”%E0\”,\”à\”):s=Replace(s,\”%E2\”,\”â\”)s=Replace(s,\”%E4\”,\”ä\”):s=Replace(s,\”%E7\”,\”ç\”)s=Replace(s,\”%E8\”,\”è\”):s=Replace(s,\”%E9\”,\”é\”)s=Replace(s,\”%EA\”,\”ê\”):s=Replace(s,\”%EB\”,\”ë\”)s=Replace(s,\”%F6\”,\”ö\”)s=Replace(s,\”%F9\”,\”ù\”):s=Replace(s,\”%FC\”,\”ü\”)s=Replace(s,\”<\”,\”<\”):s=Replace(s,\”>\”,\”>\”)If d.Exists(s) Thenk=d.Item(s)+1d.Item(s)=ki=-1\’If more than the first value, insert itdo while (a(i+1)<k) and (i<C_MaxList-1)i=i+1loopif i>=0 Then\’i=where to be insertedx=0For j=0 to C_MaxList-1If ucase(b(j))=ucase(s) Thenx=jExit ForEnd IfNextFor j=x+1 to ia(j-1)=a(j)b(j-1)=b(j)Nexta(i)=kb(i)=sEnd IfElsed.Add s,1End IfRetStr=RetStr & d.Item(s) & \”-\” & s & vbCRLF
\’Extract WordsSet Matchesw=regExw.Execute(s)For Each Matchw in Matchesww=Matchw.ValueIf Len(w)>2 ThenIf dw.Exists(w) Thenk=dw.Item(w)+1dw.Item(w)=ki=-1\’If more than the first value, insert itdo while (f(i+1)<k) and (i<C_MaxList-1)i=i+1loopif i>=0 Then\’i=where to be insertedx=0For j=0 to C_MaxList-1If ucase(g(j))=ucase(w) Thenx=jExit ForEnd IfNextFor j=x+1 to if(j-1)=f(j)g(j-1)=g(j)Nextf(i)=kg(i)=wEnd IfElsedw.Add w,1End IfEnd IfNextEnd IfNextRegExpTest=RetStrEnd Function
</script><script for=window event=onload>DoLoad</script><xscript for=window event=onbeforeunload> \’DoSave</xscript><script>Sub DoSave foo.setAttribute \”content\”, foo.innerHTML foo.save \”EditContent\”End Subsub DoLoad foo.load \”EditContent\” content = foo.getAttribute(\”content\”) if content<>\”\” Then foo.innerHTML=contentEnd SubSub DoClear foo.innerHTML = \”\”End Sub
Function Disp(x)Select case getlocaleCase 1036,2060,3084,5132,4108\’FrenchSelect Case xCase 0\’sous-titreDisp=\”Outil d\’analyse de requêtes – 1 backlink svp !\”Case 1Disp=\”Votre liste de mots à monitorer :\”Case 2Disp=\”Sauve\”Case 3Disp=\”R.A.Z\”Case 4Disp=\”Charge\”Case 5Disp=\”requêtes\”Case 6Disp=\”Dernières requêtes\”Case 7Disp=\”Nb de requêtes lues\”Case 8Disp=\”Cliquez dans le menu pour activer l\’analyse d\’un moteur.\”_& \” Recliquez pour la désactiver.\”Case 9Disp=\”Mots\”Case ElseDisp=\”###\”End SelectCase ElseSelect Case xCase 0\’sub titleDisp=\”A linkware search engine analysis tool\”Case 1Disp=\”Your keywords to monitor :\”Case 2Disp=\”Save\”Case 3Disp=\”Clear\”Case 4Disp=\”Load\”Case 5Disp=\”Queries\”Case 6Disp=\”Last queries\”Case 7Disp=\”Amount of scanned queries\”Case 8Disp=\”Click above to start the queries analyzis on a specific search engine.\”_& \” Click again to stop it.\”Case 9Disp=\”Words\”Case ElseDisp=\”###\”End SelectEnd SelectEnd FunctionSub DispSE(x)Select Case xCase 0if lycosfr.location=\”about:blank\” Thenlycosfr.location=\”http://www.recherche.lycos.fr/voyeur\”Elselycosfr.location=\”about:blank\”End IfCase 1if lycosde.location=\”about:blank\” Thenlycosde.location=\”http://www.lycos.de/inc/content/suche/\”_& \”includes/livesuche_iframe.htm?ergebnisse=&refresh=\”Elselycosde.location=\”about:blank\”End IfCase 2if fireballde.location=\”about:blank\” Thenfireballde.location=\”http://www.fireball.de/livesuche.csp\”Elsefireballde.location=\”about:blank\”End IfCase 3if metacrawler.location=\”about:blank\” Thenmetacrawler.location=\”http://www.metaspy.com/info.metac.spy/metaspy/unfiltered.htm\”Elsemetacrawler.location=\”about:blank\”End IfCase 4if kanoodle.location=\”about:blank\” Thenkanoodle.location=\”http://www.kanoodle.com/spy/spy.cool\”Elsekanoodle.location=\”about:blank\”End IfCase 5if galaxy.location=\”about:blank\” Thengalaxy.location=\”http://watch.galaxy.com/b/watch?filter\”Elsegalaxy.location=\”about:blank\”End IfCase ElseMsgbox \”DispSE : not found – \” & xEnd SelectEnd Sub
</script><style>body,td,th,p{font-size: 11px;font-family: Tahoma,Arial;}.topmenu{border:1px solid #222222;background-color:#eeeeee;}.topmenu a{height:15px;background-color:#BDDCBD;padding-top:1px;padding-left:5px;padding-right:5px;text-decoration:none;color:black;text-align:center;display:block;}.topmenu a:hover, .topmenu a:active{background-color:#89DB89;color:black;}#rb{border-right:1px solid #222222;}A{color:#AAFFCC}BUTTON{font-size: 7pt;cursor:hand;}.userData {behavior:url(#default#userdata);}</style>
</head>
<body bgcolor=white text=black style=\”margin:2\”><a href=http://www.interclasse.com/scripts/keywordranking.php><img src=wp-content/uploads/2023/12/https://www.u-9.cn/wp-content/uploads/2023/12/2023120510422284.gif align=left border=0></a>
<H1 style=\”margin-bottom: 0px;\”>Keyword Ranking</H1><Script>document.write Disp(0)</Script>
<table class=topmenu border=\”0\” cellpadding=\”0\” cellspacing=\”0\”><tr><td width=60 id=rb> </td><td id=rb width=80><a href=\”#\” onClick=\’options.style.display=\”block\”\’>Options</a></td><td id=rb width=80><a href=\”#\” Title=\”French\” onclick=\”DispSE 0\”>Lycos.fr</a></td><td id=rb width=80><a href=\”#\” Title=\”Deutsch\” onclick=\”DispSE 1\”>Lycos.de</a></td><td id=rb width=80><a href=\”#\” Title=\”Deutsch\” onclick=\”DispSE 2\”>firball.de</a></td><td id=rb width=80><a href=\”#\” Title=\”MetaSpy\” onclick=\”DispSE 3\”>MetaCrawler</a></td><td id=rb width=80><a href=\”#\” onclick=\”DispSE 4\”>Kanoodle</a></td><td id=rb width=80><a href=\”#\” onclick=\”DispSE 5\”>Galaxy</a></td><td width=60> </td></tr></table><script>document.write Disp(8)</script><br>
<div id=options style=\”display:none;width:180;border:1px dashed #222222;background-color:#D0D0D0\”><script>document.write Disp(1)</script><div id=foo class=userData contentEditable=true style=\”margin=4;width:170;height:14;border:1px solid;background-color:white\”></div><button onClick=\’DoSave()\’><script>document.write Disp(2)</script></button><button onClick=\’DoClear()\’><script>document.write Disp(3)</script></button><button onClick=\’DoLoad()\’><script>document.write Disp(4)</script></button> <button onClick=\’options.style.display=\”none\”\’>ok</button></div>
<div ID=MaListe></div>
<table width=100%><tr><td><iframe id=lycosfr height=200 src=\”about:blank\” onload=\”go 0\” width=100%></iframe><iframe id=fireballde height=200 src=\”about:blank\” onload=\”go 2\” width=100%></iframe><iframe id=kanoodle height=200 src=\”about:blank\” onload=\”go 4\” width=100%></iframe></td><td><iframe id=lycosde height=200 src=\”#\” onload=\”go 1\” width=100%></iframe><iframe id=metacrawler height=200 src=\”about:blank\” onload=\”go 3\” width=100%></iframe><iframe id=galaxy height=200 src=\”about:blank\” onload=\”go 5\” width=100%></iframe></td></tr></table>
</body></html>原文:http://www.interclasse.com/scripts/keywordranking.php