2 个版本
0.1.1 | 2024年3月31日 |
---|---|
0.1.0 | 2024年3月30日 |
#6 in #robots-txt
27KB
592 行
Roboto:解析和使用 robots.txt 文件
Roboto 提供了一种类型安全的解析和使用 robots.txt 文件的方式。它基于 Robots Exclusion 协议,用于大约控制网络爬虫和其他网络机器人的行为。
安装
将以下内容添加到您的 Cargo.toml
[dependencies]
roboto = "0.1"
用法
use roboto::Robots;
let robots = r#"
User-agent: *
Disallow: /private
Disallow: /tmp
"#.parse::<Robots>().unwrap();
let user_agent = "googlebot".parse().unwrap();
assert_eq!(robots.is_allowed(&user_agent, "/public"), true);
lib.rs
:
解析和应用 robots.txt 文件。
示例
use roboto::Robots;
let robots = r#"
User-agent: *
Disallow: /
"#.parse::<Robots>().unwrap();
assert!(!robots.is_allowed(&"googlebot".parse().unwrap(), "/"));
assert!(robots.is_allowed(&"googlebot".parse().unwrap(), "/robots.txt"));
assert!(!robots.is_allowed(&"googlebot".parse().unwrap(), "/foo/bar"));
参考
依赖
~120KB