tomverran/robots-txt-checker

给定一个robots.txt文件,用户代理和URL路径将告诉您是否允许访问该页面

1.17 2020-10-03 08:17 UTC

This package is auto-updated.

Last update: 2024-08-29 04:12:13 UTC


README

Build Status Packagist Test Coverage Code Climate

给定一个robots.txt文件,这个库将直接给出是/否,告诉您是否允许使用指定的用户代理访问给定的资源。

这个库是在参考了谷歌的robots.txt规范和1996年(!)的草稿norobots RFC的基础上构建的。因此,以下所有功能都得到了支持

  • 路径中的通配符,包括跨越目录边界的情况
  • 使用'$'后缀将路径匹配锚定到URL的末尾
  • 按用户代理长度对多个匹配的用户代理/路径块进行排序
  • 解码URL编码的路径,但排除正斜杠
  • 路径末尾有斜杠表示该目录下的所有文件都应该匹配

如果您发现这个库有任何错误,请随时告诉我,您可以在GitHub上创建一个问题或提交一个拉取请求。

安装

您可以在终端中输入以下内容

composer require tomverran/robots-txt-checker

或者将以下内容添加到您的composer.json文件中

"require": {
    "tomverran/robots-txt-checker": "^1.15"
}

示例用法

我本人将这个库与一个http客户端库一起使用,这样所有的请求都会先通过一个检查网站robots.txt的类。基本用法如下

<?php
use \tomverran\Robot\RobotsTxt;
$robotsTxt = new RobotsTxt(file_get_contents('http://your-site-here/robots.txt'));
$canViewPage = $robotsTxt->isAllowed('my-user-agent', '/some/path/');

许可证

简而言之,MIT许可证

版权所有 (c) 2014, 2018 Tom Verran

在此特此授予任何获得此软件及其相关文档副本(以下简称“软件”)的人免费使用权,不受限制地处理该软件,包括但不限于使用、复制、修改、合并、发布、分发、再许可和/或销售软件副本,并允许将软件提供给他人,以便他们可以这样做,前提是遵守以下条件

上述版权声明和本许可声明应包含在软件的所有副本或主要部分中。

本软件按“原样”提供,不提供任何明示或暗示的保证,包括但不限于适销性、特定用途适用性和非侵权性保证。在任何情况下,作者或版权所有者均不对任何索赔、损害或其他责任负责,无论该责任是基于合同、侵权或其他原因,无论该责任是否源于、涉及或与该软件或软件的使用或其他交易有关。