写点什么

谷歌正式开源内部解析器与代码库,旨在推进形成 robots.txt 解析标准

  • 2019-07-02
  • 本文字数:834 字

    阅读完需:约 3 分钟

谷歌正式开源内部解析器与代码库,旨在推进形成robots.txt解析标准

机器人排除协议(REP)是一种标准,使网站所有者能够通过具有特定语法的简单文本文件来控制自动客户端(即爬虫)可以访问哪些 URL。它是我们所知道的互联网基本构建模块之一,也是搜索引擎运行的基础。


25 年来,机器人排除协议(REP)几乎成为了一种约定俗成的标准,但这有时会带来一些负面的影响,不同的开发者实现 robots.txt 的解析总是略有不同,很容易导致混乱。


一方面,对于网站管理员来说,这意味着在某些特殊情况下的不确定性,比如当他们的文本编辑器在 robots.txt 文件中包含 BOM 字符时。另一方面,对于爬虫和工具开发人员来说,也带来了不确定性,例如,它们应该如何处理几百兆字节的 robots.txt 文件?


今天,谷歌宣布:将通过发布一款 Google 内部使用的解析器和一套 C++库来解决这个问题。


开源项目地址:https://github.com/google/robotstxt


据称,这个库已经有 20 年的历史了,它包含了一些九十年代编写的代码,也包含了很多关于网站管理员如何编写 robots.txt 文件和必须处理的案例的知识。


该 C++库只对产品代码做了轻微修改(即一些内部 header 和等同的符号),Googlebot(Google 的抓取工具)使用它来根据 robots.txt 文件中网站管理员提供的规则确定可以访问的网址,可帮助开发人员构建更好地反映 Google robots.txt 解析和匹配的工具。


库中包含了一个二进制文件,用于针对用户代理和 URL 测试本地 robots.txt。运行包含的二进制文件需要:


  • 兼容的平台(例如 Windows,Mac OS X,Linux 等)。大多数平台都完全支持。

  • 兼容的 C ++编译器,至少支持 C ++ 11。大多数主要编译器都受到支持。

  • Git用于与源代码存储库交互。如要安装 Git,请参阅GitHub上的 Set Up Git指南 。

  • 虽然用户可以自由使用自己的构建系统,但本指南中的大多数文档都假设用户使用的是 Bazel。要下载和安装 Bazel(及其任何依赖项),请参阅 Bazel安装指南


此外,谷歌还在开源包中添加了一个测试工具,以帮助开发者测试一些规则。使用非常简单:


robots_main <robots.txt content> <user_agent> <url>
复制代码


2019-07-02 18:347980
用户头像
陈思 InfoQ编辑

发布了 576 篇内容, 共 294.5 次阅读, 收获喜欢 1305 次。

关注

评论

发布
暂无评论
发现更多内容

【TiDB 社区智慧合集】TiDB 在核心场景的实战应用

TiDB 社区干货传送门

为啥你心里想了什么抖音就会给你推什么?

客户在哪儿AI

人工智能 ToB营销 大客户营销

Pinterest 选择采用 TiDB

TiDB 社区干货传送门

望繁信科技CEO索强出席2024新质生产力生态大会,畅谈中国AI聚沙成塔之路

望繁信科技

流程挖掘 流程资产 流程智能 望繁信科技 中国AI

从代码操作到洞察发现:API 接口中的商品详情数据世界

Noah

淘宝商品详情API返回值中的商品标签与分类

技术冰糖葫芦

API 安全 API 文档 API 测试 pinduoduo API

TiDB CDC 近期遇到问题总结

TiDB 社区干货传送门

监控 迁移 集群管理 管理与运维

Datawhale 零基础入门CV赛事-Task4 模型训练与验证

阿里云天池

网页文本分类题赛后总结(排名第二)

阿里云天池

焱融科技与神州鲲泰完成产品互认证 共建自主创新新生态

焱融科技

高性能存储 国产化算力

uni-app正式支持鸿蒙原生应用开发

源字节1号

开源

大型IM稳定性监测实践:手Q客户端性能防劣化系统的建设之路

JackJiang

即时通讯;IM;网络编程

搜款网商品列表数据接口(vvic.item_search)使用指南

tbapi

搜款网 搜款网API接口 搜款网商品列表数据接口 vvic VVIC网数据采集

在日本为什么 mysql都被tidb所替换?

TiDB 社区干货传送门

数据库架构设计 8.x 实践

瓜子二手车在财务中台结账核心系统 TiDB&TiFlash 实践

TiDB 社区干货传送门

数据库架构选型 HTAP 场景实践 数据中台场景实践

TiDB监控prometheus常用技巧

TiDB 社区干货传送门

监控 实践案例 集群管理 管理与运维

tidb8.1的磁盘选择,关于网络ssd,和本地ssd的选择对性能影响很大,差距60倍。

TiDB 社区干货传送门

8.x 实践

MES系统到底能解决企业什么问题?

万界星空科技

制造业 生产管理系统 mes 万界星空科技

iPhone可运行的谷歌Gemma 2 2B模型,性能超GPT-3.5

硅纪元

gpt4o Gemma 2

GitHub Star 数量前 12 的开源无代码工具

NocoBase

GitHub 开源 无代码开发 无代码平台

NocoBase 社区正式上线!

NocoBase

开源 低代码 无代码平台

想要解析邮件?IMAP协议轻松助你,不再烦恼!

左诗右码

Go imap

Java 关键字之 native 详解

源字节1号

开源

谷歌正式开源内部解析器与代码库,旨在推进形成robots.txt解析标准_开源_陈思_InfoQ精选文章