📜  robotsjs - Javascript (1)

📅  最后修改于: 2023-12-03 15:19:50.836000             🧑  作者: Mango

robotsjs - JavaScript

npm version GitHub license

简介

robotsjs是一个用于处理Robots.txt文件的JavaScript库。它提供了一种简单而高效的方式来解析、验证和生成Robots.txt文件。无论您是在构建网络爬虫、搜索引擎优化工具还是其他与Robots.txt文件相关的应用程序,都可以使用robotsjs来轻松处理这些任务。

安装

可以通过npm或yarn来安装robotsjs:

npm install robotsjs
# 或者
yarn add robotsjs
使用示例
解析Robots.txt文件
const { parse } = require('robotsjs');

const robotsTxt = `
  User-agent: *
  Disallow: /private/
  Allow: /public/
`;

const parsed = parse(robotsTxt);
console.log(parsed);

输出结果:

{ 
  'user-agent': [ '*' ],
  disallow: [ '/private/' ],
  allow: [ '/public/' ]
}
验证访问权限
const { canAccess } = require('robotsjs');

const robotsTxt = `
  User-agent: *
  Disallow: /private/
`;

const isAllowed = canAccess(robotsTxt, '/public/');
console.log(isAllowed); // true

const isDisallowed = canAccess(robotsTxt, '/private/');
console.log(isDisallowed); // false
生成Robots.txt文件
const { generate } = require('robotsjs');

const rules = {
  'user-agent': ['*'],
  disallow: ['/private/'],
  allow: ['/public/']
};

const robotsTxt = generate(rules);
console.log(robotsTxt);

输出结果:

User-agent: *
Disallow: /private/
Allow: /public/
API 文档
parse(robotsTxt: string): object

将Robots.txt文件解析为JavaScript对象,其中属性名为Robots.txt规则。

canAccess(robotsTxt: string, targetUrl: string): boolean

根据Robots.txt文件判断目标URL是否可以访问。

generate(rules: object): string

根据提供的规则对象生成Robots.txt文件。

许可证

该库基于 MIT License 开源。