AI Crawl Control 分析数据可以通过 Cloudflare 的 GraphQL Analytics API 获取。您可以查询与仪表板中显示的相同数据,以构建自定义报告、与监控系统集成或导出以进行分析。使用 GraphQL API Explorer ↗ 测试查询,或通过 Chrome DevTools 获取仪表板使用的确切查询。
| 筛选器 | 描述 | 可用性 |
|---|---|---|
requestSource: "eyeball" |
仅限真实客户端请求。排除 Cloudflare 内部流量。 | 所有计划 |
userAgent_like: "%...%" |
按 User Agent 进行筛选。可能被伪造。 | 所有计划 |
edgeResponseStatus_geq / _lt |
按 HTTP 状态码范围进行筛选。 | 所有计划 |
clientRequestPath_like: "%...%" |
按 URL 路径模式进行筛选。 | 所有计划 |
clientRefererHost_like: "%...%" |
按 引流域名 进行筛选。 | 仅限付费计划 |
botDetectionIds_hasany: [...] |
按 检测 ID 进行筛选。由 Cloudflare 可靠地进行验证。 | Bot Management |
使用检测 ID 获取随时间推移的 AI 爬虫请求
{
viewer {
zones(filter: { zoneTag: "<ZONE_ID>" }) {
httpRequestsAdaptiveGroups(
filter: {
datetime_geq: "2027-01-01T00:00:00Z"
datetime_leq: "2027-01-02T00:00:00Z"
requestSource: "eyeball"
# 123815556 = GPTBot, 132995013 = ChatGPT-User, 126255384 = OAI-SearchBot
botDetectionIds_hasany: [123815556, 132995013, 126255384]
}
limit: 5000
) {
count
dimensions {
datetimeHour
botDetectionIds
clientRequestHTTPHost
}
sum {
edgeResponseBytes
}
}
}
}
}使用 User Agent 获取随时间推移的 AI 爬虫请求
{
viewer {
zones(filter: { zoneTag: "<ZONE_ID>" }) {
httpRequestsAdaptiveGroups(
filter: {
datetime_geq: "2027-01-01T00:00:00Z"
datetime_leq: "2027-01-02T00:00:00Z"
requestSource: "eyeball"
userAgent_like: "%GPTBot%"
}
limit: 5000
) {
count
dimensions {
datetimeHour
userAgent
clientRequestHTTPHost
}
sum {
edgeResponseBytes
}
}
}
}
}获取被爬取最多的路径
{
viewer {
zones(filter: { zoneTag: "<ZONE_ID>" }) {
httpRequestsAdaptiveGroups(
filter: {
datetime_geq: "2027-01-01T00:00:00Z"
datetime_leq: "2027-01-02T00:00:00Z"
requestSource: "eyeball"
edgeResponseStatus_geq: 200
edgeResponseStatus_lt: 400
userAgent_like: "%GPTBot%"
}
limit: 5000
orderBy: [count_DESC]
) {
count
dimensions {
clientRequestPath
clientRequestHTTPHost
}
}
}
}
}获取 AI 引流流量
{
viewer {
zones(filter: { zoneTag: "<ZONE_ID>" }) {
httpRequestsAdaptiveGroups(
filter: {
datetime_geq: "2027-01-01T00:00:00Z"
datetime_leq: "2027-01-02T00:00:00Z"
requestSource: "eyeball"
OR: [
{ clientRefererHost_like: "%.chatgpt.com%" }
{ clientRefererHost: "chatgpt.com" }
{ clientRefererHost_like: "%.perplexity.ai%" }
{ clientRefererHost: "perplexity.ai" }
]
}
limit: 5000
orderBy: [count_DESC]
) {
count
dimensions {
datetimeHour
clientRefererHost
}
}
}
}
}按爬虫获取数据传输量
{
viewer {
zones(filter: { zoneTag: "<ZONE_ID>" }) {
httpRequestsAdaptiveGroups(
filter: {
datetime_geq: "2027-01-01T00:00:00Z"
datetime_leq: "2027-01-02T00:00:00Z"
requestSource: "eyeball"
userAgent_like: "%GPTBot%"
}
limit: 5000
orderBy: [sum_edgeResponseBytes_DESC]
) {
count
dimensions {
userAgent
}
sum {
edgeResponseBytes
}
}
}
}
}- Bot 参考 — 检测 ID 和 User Agent
- GraphQL Analytics API — 完整的 API 文档