怎樣用asp程序讀取網站的alexa世界排名_ASP教程
推薦:怎樣做到一個網站空間多個域名訪問一個網站空間,但是卻可以實現多個域名的訪問的一段ASP代碼: 以下為引用的內容: % if Request.ServerVariables(SERVER_NAME)=&q
平時每逢alexa排名更新時,我都需要將所有相關的同類網站的排名整理一下,看一下這些對手網站的排名更新情況。做的多了,也就煩了,雖然也才30多個網站,但一個個看下來也有點累。因此,想能不能用程序來讀取他的排名數據。
以前記得在什么網址大全的網站上,一個網站名稱后面還有這個網站的世界排名,相信肯定是用程序讀取的,不然要是一個個查非累死不可。但是瀏覽遍了alexa的網站,也沒有找到能夠直接得到排名數據的方法。雖然它提供了一些代碼,如:,但是圖片的數字就沒辦法讀取到了。
后來想要不用xmlhttp讀它頁面,然后截取出那段數字?麻煩是麻煩點,也許可以一試。于是開始查看顯示排名的那兩頁,
以下為引用的內容:
http://www.alexa.com/data/details/@url=www.itlearner.com 和 http://www.alexa.com/data/details/traffic_details@q=!amp;url=www.itlearner.com,查看源文件,搜索"traffic rank for",搜到我網站的排名是這樣一段代碼:<ti><bbip><traffic><today>4</today></traffic></bbip></ti>5<tprp><pyp><page views rank:><pyp>,</pyp></page views rank:></pyp></tprp><today>7</today><page views per user:><tq3re@rexef.com><today>6</today></tq3re@rexef.com></page views per user:><budf@opif.org><traffic rank for>1</traffic rank for></budf@opif.org>,撲通,看得這段代碼都大了,再找了一下,看到在顯示traffic rank:today 1 wk. avg. 3 mos. avg. 3 mos. change那邊,前面today和1wk都是用上面那種形式表示的,而到了3 mos也就是最關鍵的數據那邊,確是直接用數字顯示的,太好了! |
分析了一下前后的代碼,發現數據后面的</td><td class="bodybold" align="center" bgcolor="#ffffff"><img這段代碼是唯一的,于是開始編程工作。
下面的源代碼示例,供大家參考:
以下為引用的內容:
<% private function bytes2bstr(vin) dim i, thischrcode, nextchrcode strreturn = "" for i = 1 to lenb(vin) thischrcode = ascb(midb(vin, i, 1)) if thischrcode < !amp;h80 then strreturn = strreturn !amp; chr(thischrcode) else nextchrcode = ascb(midb(vin, i 1, 1)) strreturn = strreturn !amp; chr(clng(thischrcode) * !amp;h100 cint(nextchrcode)) i = i 1 end if next bytes2bstr = strreturn end function function geturl(url) set retrieval = server.createobject("microsoft.xmlhttp") with retrieval。open "get", url, false, "", ""。send geturl = .responsetext geturl = bytes2bstr(。responsebody) end with set retrieval = nothing end function 以上是使用xmlhttp讀取頁面代碼的通用代碼 function getalexarank(url) on error resume next dim tempstr,trueurl,x,keystr trueurl = "http://www.alexa.com/data/details/traffic_details@q=!amp;url=" !amp; url tempstr=geturl(trueurl) keystr = "</td><td class=""bodybold"" align=""center"" bgcolor=""#ffffff""><img" tempstr = split(tempstr,keystr)(0) x = instrrev(tempstr,">") 1 tempstr = mid(tempstr,x) if err then getalexarank=err.description err.clear else getalexarank=tempstr end if end function |
以上是讀取alexa網站頁面,對代碼進行分析然后得到排名的數據
以下為引用的內容:
dim url url="www.itlearner.com" 要查詢的網址,不要加http:// response.write(getalexarank2(url)) 輸出排名數據 %> |
嘿嘿,以后公司的相關網站排名,就不用再一個一個去查了,只需要把那些網站依此放在程序里,就可以讓程序一個一個的讀出來了。
分享:怎樣隱藏圖片的真實地址一般情況下,網站的圖片代碼是這樣的。 以下為引用的內容: img src=./attachments/test.jpg />
- 相關鏈接:
- 教程說明:
ASP教程-怎樣用asp程序讀取網站的alexa世界排名。