欢迎来到天天文库
浏览记录
ID:21945093
大小:68.00 KB
页数:7页
时间:2018-10-25
《网站静态页面生成及网站数据采集的攻防》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、网站静态页面生成及网站数据采集的攻防>>edu.5151doc.教育资源库 本着互联网共享主义精神,特写此文献给建站新手,授人以鱼,不如授人以渔,本文所讲的只是方法和原理,希望大家看完此文,能够从中得到些帮助和启发。 本文从一个ASP程序员的角度用大量实例祥细介绍了动态网站如何生成静态页面原理,又从一个采集程序开发者的角度去祥细介绍了网站数据采集的原理及功防策略。 关于网站生成静态页面,为了让本文读者容易理解,文内列举了目前常用的多种生成静态页面的方法,其中用了很多的实例代码进行说明。 关于网站数据采集攻防,本身是一个采集程序的开发者,同
2、时也收集研究了多种采集程序,列举了目前国内比较流行的几种防采集策略,并对每种策略作了简单客观的分析评价,希望能给广大站长们提供一些帮助。此章节也把原创的防采集方法奉献给大家,目地是为了让大家了解,防采集,不防搜索引擎,是可行的,有效的。 声明:希望各位朋友转载时,不要把原有版权去掉,谢谢合作。 由于本人写作水平有限,写的不好的地方,还请大家多多包涵,如要批评或意见,请加我。 目前很多人都开始注重动态页面生成HTML页了,但选择哪种生成HTML的方法和防采集却不防搜索引擎的问题却经常困扰大家。解决此问题则是本文产生的原因。 首先祥细说一下常
3、用的几种生成HTML的方法: 生成HTML方法主要步骤只有两个: 一、获取要生成的html文件的内容 二、将获取的html文件内容保存为html文件 我在这里主要说明的只是第一步:如何获取要生成的html文件的内容: 目前常用获取html文件的内容的方法有几下几种: 1、str="<html标记>内容</html标记>" str=str"内容数据库读取内容........." 这种方法与是在脚本内写要生成的html内容,不太方便预览生成页面的内容,无法可视化布局页面,更改html模板时会更加复杂。 用这种方法的人很多
4、,但我感觉这种方法是最不方便的。 2、制作单独的HTML模板页,动态的内容用特定的字符作为标记(如:有人用$title$标记为网页标题),用ADODB.Stream或者Scripting.FileSystemObject将其模板内容载入,然后再用替换方法把原先定好的标记替换为动态内容(如:Replace(载入的模板内容,"$title$",rs("title")))。 3、用XMLHTTP或serverXMLHTTP获取动态页所显示的HTML内容。 我常用的生成html文件的实例: '-----------------翟振恺(小琦) '
5、p;Request.ServerVariables("SERVER_NAME")"/contact.asp?id="rs("id")""‘指定动态页地址 body=getHTTPPage(或者Scripting.FileSystemObject保存成html文件。 第二步是生成文件的方法: ASP里常用的有用ADODB.Stream生成文件和Scripting.FileSystemObject生成文件两种 1、Scripting.FileSystemObject生成文件方法: CODE:[Copytoclipboard]'-------
6、----------翟振恺(小琦) Setfso=CreateObject("Scripting.FileSystemObject") File=Server.MapPath("要生成文件路径和文件名.htm") Settxt=fso.OpenTextFile(File,8,True) data1="文件内容"用L防采集却不防搜索引擎蜘蛛的一些经验: 我开发过几个采集程序,也研究过很多采集程序代码,所以对采集程序的原理还算是稍微有些了解。 先说一下采集原理: 采集程序的主要步骤如下: 一、获取被采集的页面的内容 二、从获取代码中
7、提取所有用的数据 一、获取被采集的页面的内容 我目前所掌握的ASP1234下一页[这篇文章来自..,]常用获取被采集的页面的内容方法: 1、用serverXMLHTTP组件获取数据 '-----------------翟振恺(小琦) '创建对象 DimObjXMLHTTP SetObjXMLHTTP=Server.CreateObject("MSXML2.serverXMLHTTP") '请求文件,以异步形式 ObjXMLHTTP.Open"GET",objstream setobjstream=Server.CreateOb
8、ject("adodb.stream") objstream.Type=1 objstream.Mode=3 objstream.
此文档下载收益归作者所有