45IT.COM- 电脑学习从此开始!
DIY硬件教程攒机经验装机配置
设计Photoshop网页设计特效
系统注册表DOS系统命令其它
存储主板显卡外设键鼠内存
维修显卡CPU内存打印机
WinXPVistaWin7unix/linux
CPU光驱电源/散热显示器其它
修技主板硬盘键鼠显示器光驱
办公ExcelWordPowerPointWPS
编程数据库CSS脚本PHP
网络局域网QQ服务器
软件网络系统图像安全
页面导航: 首页 > 设计学院 > 网络编程 > ASP教程 >

示例:asp读取alexa网站排名的方法

电脑软硬件应用网 45IT.COM 时间:2010-02-22 12:36 作者:ALXEA8

本文讲一下asp读取网站alexa排名的方法,都是抓取远程服务器的数据实现。开始查看显示排名的那两页。

以下为引用的内容:
http://www.alexa.com/data/details/@url=www.45its.com 和 http://www.alexa.com/data/details/traffic_details@q=!amp;url=www.45its.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.45its.com.cn" 要查询的网址,不要加http:// response.write(getalexarank2(url)) 输出排名数据

  %>

嘿嘿,以后公司的相关网站排名,就不用再一个一个去查了,只需要把那些网站依此放在程序里,就可以让程序一个一个的读出来了。

顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
无法在这个位置找到: baidushare.htm
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
验证码:点击我更换图片
你可能感兴趣的文章
推荐知识