asp网站生成静态页面攻略(4)
作者:zkq0 来源:蓝色理想 发布时间:2007-11-04 15:09:00
从前面的我讲的采集原理大家可以看出,绝大多数采集程序都是靠分析规则来进行采集的,如分析分页文件名规则、分析页面代码规则。
一、分页文件名规则防采集对策
大部分采集器都是靠分析分页文件名规则,进行批量、多页采集的。如果别人找不出你的分页文件的文件名规则,那么别人就无法对你的网站进行批量多页采集。
实现方法:
我认为用MD5加密分页文件名是一个比较好的方法,说到这里,有人会说,你用MD5加密分页文件名,别人根据此规则也可以模拟你的加密规则得到你的分页文件名。
我要指出的是我们加密分页文件名时,不要只加密文件名变化的部分
如果I代表分页的页码,那么我们不要这样加密:page_name=Md5(I,16)&".htm"
最好给要加密的页码上再跟进一个或多个字符,如:page_name=Md5(I&"任意一个或几个字母",16)&".htm"
因为MD5是无法反解密的,别人看到的会页字母是MD5加密后的结果,所以加人也无法知道你在 I 后面跟进的字母是什么,除非他用暴力****MD5,不过不太现实。
二、页面代码规则防采集对策
如果说我们的内容页面无代码规则,那么别人就无法从你的代码中提取他们所需要的一条条内容。所以我们要的这一步做到防采集,就要使代码无规则。
实现方法:
使对方需要提取的标记随机化
1、定制多个网页模板,每个网页模板里的重要HTML标记不同,呈现页面内容时,随机选取网页模板,有的页面用CSS+DIV布局,有的页面用table布局,此方法是麻烦了点,一个内容页面,要多做几个模板页面,不过防采集本身就是一件很烦琐的事情,多做一个模板,能起到防采集的作用,对很多人来说,都是值得的。
2、如果嫌上面的方法太麻烦,把网页里的重要HTML标记随机化,也可以。
做的网页模板越多,html代码越是随机化,对方分析起内容代码时,就越麻烦,对方针对你的网站专门写采集策略时,难度就更大,在这个时候,绝大部分人,都会知难而退,因为这此人就是因为懒,才会采集别人网站数据嘛~~~再说一下,目前大部分人都是拿别人开发的采集程序去采集数据,自己开发采集程序去采集数据的人毕竟是少数。
还有些简单的思路提供给大家:
1、把对数据采集者重要,而对搜索引擎不重要的内容用客户端脚本显示
2、把一页数据,分为N个页面显示,也是加大采集难度的方法
3、用更深层的连接,因为目前大部分采集程序只能采集到网站内容的前3层,如果内容所在的连接层更深,也可以避免被采集。不过这样可能会给客户造成浏览上的不便。如:
大多网站都是 首页----内容索引分页----内容页
如果改成:
首页----内容索引分页----内容页入口----内容页
注:内容页入口最好能加上自动转入内容页的代码
<meta http-equiv="refresh" content="6;url=内容页(http://www.xiaoqi.net)">
其实,只要做好防采集的第一步(加密分页文件名规则),防采集的效果就已经不错了,还是建议两条反采集方法同时使用,给采集者增加采集难度,使得他们知难页退。


猜你喜欢
- 这里是一个使用日期函数的例子。下面的查询选择了所有记录,其date_col的值是在最后30天以内: mysql>
- string操作在编程中具有极高的频率,那么string中有哪些有用的方法呢?使用strings直接操作Comparefunc Compar
- 本文实例讲述了Python3.6实现根据电影名称(支持电视剧名称),获取下载链接的方法。分享给大家供大家参考,具体如下:做个笔记(pytho
- pycharm确实要比Spyder功能全面,但是anaconda的环境配置实在太方便了,所以想take both,其实很简单,利用pycha
- 在GitHub上发现一些很有意思的项目,由于本人作为Python的初学者,编程代码能力相对薄弱,为了加强Python的学习,特此利用前辈们的
- 本篇博客介绍利用python脚本实现视频分帧,并将每一帧保存到本地。主要基于opencv包来实现,在运行代码前确保opencv包已正确安装。
- 什么是 Python?自20世纪90年代初Python语言诞生至今,它已被逐渐广泛应用,Python 已然成为最受欢迎的程序设计语言之一,特
- 引言只进行基本的四则运算,利用栈结构和后缀表达式来计算数学表达式的值。本文代码:GitHub 运行效果:问题如果只能进行两个值的加
- 最近更新了VS Code之后,发现Remote-ssh拓展里的端口转发功能没了,很伤心,在探索的同时,顺手配置了一下VS Code ssh免
- 全球数据量的疯狂增长,使得市场对资深数据库管理员的需求也节节攀升。据统计,一直到2016美国IT市场对数据库管理员的需求量增长都将会超过所有
- 今天我们来学习,如何使用有趣的自定义标记来布局页面。有的朋友可能有这样的疑问,自己随便定义的标记浏览器怎么能正确的认识呢?这里我们就要用到文
- <%@ Language=VBScript %><HTML><HEAD>
- 上一篇文章讲解了如何实现马丁策略,但没有探索其泛化能力,所以这次来尝试回测3000只股票来查看盈利比例。批量爬取股票数据这里爬取数据继续使用
- 存储文件的重要一个程序在运行过程中用了九牛二虎之力终于计算出了结果,试想一下如果不把这些数据存放起来,相比重启电脑之后,。 默认数据是加载到
- 本文实例讲述了javascript将数字转换整数金额大写的方法。分享给大家供大家参考。具体实现方法如下:function digit_upp
- 前言 上一篇文章,我们讲解了图像处理中的阈值函数,这一篇文章我们来做膨胀和腐蚀函数。膨胀与腐蚀 说概念可能很难解释,我们来看图,首先是原图:
- 元组的特点:是一种不可变序列,一旦创建就不能修改1、拆包将元组的元素取出赋值给不同变量>>> a = ('hell
- 这里将更新最新的最全面的read_csv()函数功能以及参数介绍,参考资料来源于官网。pandas库简介官方网站里详细说明了pandas库的
- PyMySQLPyMySQL概述PyMySQL是一个用于Python编程语言的纯Python MySQL客户端库,它实现了MySQL数据库协
- 本文实例讲述了Python将阿拉伯数字转换为罗马数字的方法。分享给大家供大家参考。具体实现方法如下:def numToRomanNum(Nu