爬虫避免环路应该使用的技术

news/2024/7/19 9:24:18 标签: 爬虫, 数据结构与算法

1、规范化URL             

  将URL转化为标准形式避免语法上的别名

2、广度优先的爬行   

3、节流

  限制一段时间机器人可以从一个web站点的页面数量

4、限制URL的大小

机器人会拒绝爬行超出特定长度的(通常是1kb)的URL。

5、URL/站点黑名单

维护一个与机器人环路和陷阱想对应的已知站点及URL列表。

6、模式检测

文件系统的符号链接和类似的错误配置所造成的环路会遵循某种模式。(比如 URL“subdir/image/subdir/image”)

7、内容指纹

使用内容指纹的机器人会获取页面内容中的字节,并计算出一个校验和,这个校验和是页面内容的压缩表示形式。

8、人工监视

设计的机器人应该提供诊断和日志功能,这样人类可以监视机器人的进展,如果发生了什么异常的事情就可以很快收到警告。

转载于:https://www.cnblogs.com/alway-july/p/8302836.html


http://www.niftyadmin.cn/n/1854281.html

相关文章

java在线用户功能_java中监控在线用户

做项目时有需要做一个运行监控功能,主要监控用户在线的信息,主要通过用户登录和退出时更新数据库中的信息来达到这个目的,但是会出现用户登录后直接关闭浏览器的非法退出操作,这样系统是不知道该用户已经退出的,因此做…

探路以太坊

关键字:以太坊,加密货币,crowdsale,geth,console,web3.js 以太坊简介 一句话简介:以太坊是一个基于功能齐全的编程语言构建的众多去中心化区块链应用的平台。 下面来解读一下这句话: 平台&#…

java与javascript传值_jsp页面中javascript与java脚本之间传值的问题

下面是我jsp页面中的一个javascript方法,该方法作用是接收一个后台传过来的由字符串组成的集合,遍历数据并拆分字符串,每循环一次就调用一次initialize()方法,并把部分数据传递下去...下面是我jsp页面中的一个javascript方法&…

java ssj_SSJ项目自述

1.项目的名称万汇商品管理系统2.项目的介绍①项目的开发人员:五人(经理1位、后台3位、维护1位)②项目的开发周期(1-5):项目开发时间:3个月③项目中所用技术点:SpringSpringMVCSpringJdbc 后端框架EasyUIjQuery前端框架Shiro权限(用…

java 将一个文件写入另一个文件_Java 实例 - 将文件内容复制到另一个文件

Java 实例 - 将文件内容复制到另一个文件以下实例演示了使用 BufferedWriter 类的 read 和 write 方法将文件内容复制到另一个文件:Main.java 文件import java.io.*;public class Main {public static void main(String[] args) throws Exception {BufferedWriter o…

BASIC-20_蓝桥杯_数的读法

示例代码: #include <stdio.h>#include <string.h>#define N 10 char num[N] {0} ; void yuyin(int n , int x){   if (x 1 && (n 9 || n 5))   {     printf("shi ");     return ;   }   else   {     switch(x)  …

java有没有天才_帮忙做下啊,JAVA天才进来下

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼this.element element;this.next next;this.previous previous;}}private Entry addBefore(E e, Entry entry) {Entry newEntry new Entry(e, entry, entry.previous);newEntry.previous.next newEntry;newEntry.next.previou…

java编译器下载_java手机版编译器下载

java编译器安卓版是一款专为java开发人员服务的编辑客户端应用&#xff0c;利用java编译器手机安卓版实时进行相关编辑还能进行简单的编译&#xff0c;运行单个小程序等&#xff0c;提供您的效率。功能介绍java编译器安卓版是一款将openjdk中关于编译java工程的代码移植到了安卓…