屏蔽openai GPTBot爬虫的方法
栏目:
EggJs
发布时间:2024-12-16
最近 openai 的 GPTBot 蜘蛛疯狂来访,一天请求 3 万次左右,着实恼火,那就把它屏蔽吧!
屏蔽 GPTBot 方法一
在 robots.txt 文件中加入如下内容:
User-agent: GPTBot
Disallow: /
屏蔽 GPTBot 方法二
匹配 GPTBot 的 User-Agent,然后返回 403 禁止访问。
GPTBot user-agent 示例如下:
Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; GPTBot/1.2; +https://openai.com/gptbot)
以 eggjs 为例,创建拦截 GPTBot 请求的中间件 middleware/block-user-agent.js:
// middleware/block-user-agent.js
'use strict';
module.exports = () => {
return async function blockUserAgent(ctx, next) {
const userAgent = ctx.get('user-agent') || '';
if (userAgent.includes('openai')) {
// 设置响应状态码
ctx.status = 403;
// 设置响应体
ctx.body = 'Forbidden';
return;
}
// 如果不是特定的User-Agent,则继续下一个中间件
await next();
};
};
在 config/config.default.js 中配置:
middleware: [ 'blockUserAgent' ]
以上就是屏蔽 openai 的 GPTBot 的方法。
本文地址:https://www.tides.cn/p_eggjs-how-to-block-openai-gptbot