随笔-18  评论-104  文章-8  trackbacks-0

前段时间有个asp页面执行起来很慢,访问人数又颇多,而且又不经常修改,又懒得直接做成静态的,每次都要从服务器下载来改,只好想办法把asp页面转化成htm静态页面了。。。

以前就曾经看到这样的文章,不过没太在意,真正想用的时候很难找到一个合适的,于是在网上搜索了半天终于找到比较合适的代码再加上自己的修改,如下:

<%
Function GetPage(url)
 '获得文件内容
 dim Retrieval
 Set Retrieval = CreateObject("Microsoft.XMLHTTP")
 With Retrieval
  .Open "Get", url, False ', "", ""
  .Send
  GetPage = BytesToBstr(.ResponseBody)
 End With
 Set Retrieval = Nothing
End Function

Function BytesToBstr(body)
 dim objstream
 set objstream = Server.CreateObject("adodb.stream")
 objstream.Type = 1
 objstream.Mode =3
 objstream.Open
 objstream.Write body
 objstream.Position = 0
 objstream.Type = 2
 objstream.Charset = "GB2312"
 BytesToBstr = objstream.ReadText
 objstream.Close
 set objstream = nothing
End Function

on error resume next
Url="http://www.sina.com.cn"'要读取的页面地址
response.write "开始更新首页..."
wstr = GetPage(Url)

'response.write(wstr)
Set fs=Server.CreateObject("Scripting.FileSystemObject")

'if not MyFile.FolderExists(server.MapPath("/html/")) then
'MyFile.CreateFolder(server.MapPath("/html/"))'
'end if

'要存放的页面地址
dizhi=server.MapPath("index.htm")
If (fs.FileExists(dizhi)) Then
fs.DeleteFile(dizhi)
End If

Set CrFi=fs.CreateTextFile(dizhi)
Crfi.Writeline(wstr)
set CrFi=nothing
set fs=nothing
response.write "...<font color=red>更新完成!</font>"
%>

代码算是最简单的,直接保存成一个asp文件即可,只要把URL(要转化的asp地址)和dizhi(要保存的html地址)设置好就可以了,一般这两个文件在同一个目录,才能保证图片或者css、js起作用。

希望对那些正在寻找asp->htm的朋友有用。

posted on 2006-06-16 15:19 迷途小猪儿 阅读(2991) 评论(12)  编辑 收藏 网摘 所属分类: 01 .NET/ASP

评论:
#1楼  2006-06-20 13:45 | LC [未注册用户]
o 看了楼主的这个..先参考一下..目前我有很多ASP的页面要显示生成静态的.ASP刚刚学习不太会...有很多要请教的...
  回复  引用    
#2楼  2006-06-20 16:43 | LC [未注册用户]
不好意思啊.!~怎么转变后参数过不去啊?!~.....晕死.!>~
  回复  引用    
#3楼 [楼主] 2006-06-20 17:30 | 迷途小猪儿      
参数?是通过get或post的吗?如果已经转成html静态的,就不能处理这些了
  回复  引用  查看    
#4楼  2006-06-21 14:06 | LC [未注册用户]
比如说.你看这个地址http://c03.caishow.com/u/mms2.asp?f=14332&ad_id=5147
它后面不是有两个参数吗?!~里面的发送窗弹出来也有这个几个参数..现在就是生成完了以后参数过不去?..
那好比我那的这个地址都是JS写的数据源..现在换成ASP写的直接读取数据库数据...在生成HTML...只是后面的参数过不去...

  回复  引用    
#5楼 [楼主] 2006-06-21 14:46 | 迷途小猪儿      
@LC
你是说把http://c03.caishow.com/u/mms2.asp?f=14332&ad_id=5147
生成了http://c03.caishow.com/u/mms2.htm?f=14332&ad_id=5147 后,参数用不了了是吗?html肯定处理不了这些参数来与数据库打交道的

  回复  引用  查看    
#6楼  2006-06-21 15:20 | LC [未注册用户]
晕死..那我该怎么处理这个啊。.
  回复  引用    
#7楼  2006-08-07 07:59 | 孙立明 [未注册用户]
转换之后失去了原有的作用,那还有什么意义啊
  回复  引用    
#8楼 [楼主] 2006-08-07 09:04 | 迷途小猪儿      
所以有些适合转,有些不适合
  回复  引用  查看    
#9楼  2006-08-28 14:03 | myriad [未注册用户]
你好,很高兴能在网上查到这个资料,我试用了一下,确实很好用!对制作网页很有帮助.

可是我现在遇到一些问题,想求助一些帮助,能否将ASP转换成JS文件呢? 也就是说把ASP转换成HTM后,再把HTM转换成JS文件的那一种,谢谢
我的联系QQ:86368236

  回复  引用    
#10楼  2006-09-15 23:33 | mzfree [未注册用户]
为什么我就按你原来的代码放进去运行,可是产生出来的文件是空的,里面没有内容啊!
请帮帮我
andshoes@gmail.com

  回复  引用    
#11楼  2006-09-22 13:58 | 林枫[匿名] [未注册用户]
我也成功 转成HTM的啦,
http://www.wmbl.cn/index.htm

  回复  引用    
#12楼  2006-11-03 10:01 | 环球数据 [未注册用户]
  『环球数据』HQ2.CN拥有一批专业化资深专家、资深技术、优秀管理人才组成的团队,多年的IDC机房管理、服务器托管、服务器运营和虚拟主机运营经验,高性价比的服务器租用方案,让数以千计的中小企业轻松拥有独立的服务器平台。 我们为我们的用户提供第一流的高档服务器及国内最快的Internet接入速度。

域名实时在线注册、虚拟主机、企业邮局自动开设等国际领先的自主或专有技术,使企业可以在低成本、高效率、强保障的前提下建立自己的上网平台,从而大大降低了企业信息化的门槛。不断推陈出新是我们企业成功的源动力,令用户百分百满意的服务是我们团队中每一个人牢记在心的理念。环球数据与广大同仁一道,为中国互联网走向世界作出自己的微薄之力!

  回复  引用    

发表评论



姓名 [登录] [注册] 
主页
Email (仅博主可见) 
验证码 *  验证码看不清,换一张
内容(请不要发表任何与政治相关的内容)  
  登录  使用高级评论   新用户注册   返回页首      

导航: 网站首页 社区 新闻 博问 闪存 网摘 招聘 .NET频道 知识库 找找看 Google站内搜索



China-pub 计算机图书网上专卖店!6.5万品种 2-8折!
China-Pub 计算机绝版图书按需印刷服务

相关文章:

相关链接: