claude-seo 竞争对手过滤清单(Excluded Domains)深度解析:如何从 SERP 分析中剔除非真实竞争对手
【免费下载链接】claude-seoUniversal SEO skill for Claude Code. 26 sub-skills + 19 sub-agents covering technical SEO, E-E-A-T, schema, GEO/AEO, agent readiness (Lighthouse Agentic Browsing, WebMCP, llms.txt), backlinks, local SEO, e-commerce, international SEO, Google APIs, and PDF/Excel reporting. 9 optional extensions for live SEO data.项目地址: https://gitcode.com/GitHub_Trending/cl/claude-seo
导读
在基于 SERP(搜索引擎结果页)进行竞争对手评分与内容简报(Content Brief)生成时,一个最容易被忽视却直接影响结论质量的前提是:先剔除所有"不是真实商业竞争对手"的域名。本文以 claude-seo 仓库中seo-content-brief技能的配套参考文档 excluded-domains.md 为核心,完整解析其 14 类排除域名清单、URL 路径排除规则及使用方法,并结合 SKILL.md 的竞争对手评分流程、serp-overlap-methodology.md 的 SERP 聚类反模式等仓库证据,说明为什么这层过滤是保证"内容差距分析"(Content Gap Analysis)准确性的关键。读完本文,你将掌握一套可直接落地到任何 SERP 分析流程的域名过滤规则,以及如何判断"竞争格局稀薄"并正确写入内容简报。
为什么需要一份"排除域名清单"
seo-content-brief技能的核心流程是:抓取目标关键词前 5 名排名页面 → 为每个真实竞争对手按 Depth(深度)、Formatting(排版)、SEO、UX 四项打分(每项 1-10 分)→ 识别 Topic Gaps(主题缺口)、Depth Gaps(深度缺口)、Quality Gaps(质量缺口)→ 计算缺口优先级Impact × Competitive Advantage / Effort→ 生成可超越现有排名结果的写作简报。
在这一流程中,SKILL.md 第 3 步"Analyse SERPs"明确要求:
Filter out non-competitors (Wikipedia, Reddit, Pinterest, Amazon, YouTube, government sites, SEO tool pages, job boards, directories, news aggregators, social platforms). See
references/excluded-domains.mdfor the full list.
这句话是理解整份清单的钥匙:SERP 排名 ≠ 商业竞争。当目标关键词的搜索结果页里混入维基百科、Reddit、YouTube 或亚马逊时,这些站点即使排在第一,也不是你所在行业的真实对手。把它们计入竞争对手评分表,会导致:
- 深度与格式评分失真:百科条目和电商聚合页的内容形态与你的服务页/博客完全不同,无法作为可借鉴的标杆;
- 内容差距误判:你会误以为"必须超越一篇百科条目"或"必须做得像亚马逊聚合页",从而偏离真实用户意图;
- 信息增量(Information Gain)失真:SKILL.md 要求每个简报必须明确"当前排名页都没有提供的新价值",如果样本被非竞争对手污染,这个判断就失去了依据。
因此,排除域名清单本质上是一道数据清洗过滤器,它服务于整个内容简报流水线的上游。
排除域名清单完整解析(14 大类)
以下分类与域名完整继承自 excluded-domains.md。每一类都不是随意罗列,而是对应一种特定的"伪竞争形态"。
1. 百科全书与参考站点(Encyclopedias and Reference Sites)
wikipedia.org, britannica.com, investopedia.com, dictionary.com, merriam-webster.com, webmd.com, healthline.com, mayoclinic.org这类站点承担"知识定义"职责,几乎为所有信息型关键词提供标准答案。对于医疗健康类关键词,webmd.com 与 mayoclinic.org 尤其常见——它们是权威参考源而非同行,且恰好属于 Google 文档中强调的 YMYL(Your Money or Your Life)领域,普通商业站点不可能也不应该以"定义条目"的形态去竞争。
2. 社交媒体平台(Social Media Platforms)
facebook.com, instagram.com, twitter.com, x.com, linkedin.com, pinterest.com, tiktok.com, youtube.com, reddit.com, quora.com, threads.net社交平台是"社区讨论"而非"商业内容"。注意这里既有 twitter.com 也有其新域名 x.com、既有通用社交也有问答社区(reddit.com、quora.com)。值得留意的是 linkedin.com 同时出现在社交类与后面的招聘类(linkedin.com/jobs),说明同一域名可以按不同路径被多类规则命中,这是设计过滤逻辑时需要处理的幂等性细节。
3. 内容平台与博客托管(Content Platforms and Blogging)
medium.com, substack.com, blogger.com, wordpress.com, wix.com, squarespace.com, hubpages.com, tumblr.comMedium、Substack、WordPress.com 等平台上的文章属于"平台内容",其排名受平台域名权重影响极大,与你自己的独立站不在同一竞争维度。这里的筛选逻辑基于域名而非内容——即使一篇 Medium 文章恰好与你的行业强相关,其 SEO 价值信号(域名权威)与你无关。
4. 搜索引擎(Search Engines)
google.com, bing.com, yahoo.com, duckduckgo.com, baidu.com搜索引擎域名出现在 SERP 中通常是因为站内搜索、工具页或品牌页,属于导航类需求,与商业竞争无关。同时注意maps.google.com被单独列在"目录与点评"类中(见第 9 类),体现了子域名的差异化处理。
5. 市场平台与电商聚合(Marketplaces and E-Commerce Aggregators)
amazon.com, amazon.com.au, amazon.co.uk, ebay.com, ebay.com.au, etsy.com, shopify.com, alibaba.com, gumtree.com.au, kogan.com电商聚合站是"交易场所"而非"内容竞争者"。注意清单同时收录了 amazon.com、amazon.com.au、amazon.co.uk 等多个地区域名,以及 ebay.com / ebay.com.au 的国别变体,这说明排除规则必须覆盖地区化域名变体,单纯匹配主域名会漏掉本地化镜像站点。
6. 论坛与问答(Forums and Q&A)
stackoverflow.com, stackexchange.com, whirlpool.net.au, superuser.com, serverfault.com技术类问答社区(stackoverflow、superuser、serverfault)对技术型关键词几乎是无处不在的"钉子户"。whirlpool.net.au 是澳大利亚知名论坛,表明这份清单明显面向多地区(尤其是澳大利亚市场)应用场景。
7. 新闻与媒体(News and Media)
bbc.com, bbc.co.uk, cnn.com, news.com.au, abc.net.au, theguardian.com, forbes.com, techcrunch.com, theverge.com, mashable.com, huffpost.com, nytimes.com, washingtonpost.com新闻媒体输出"报道"而非"解决方案",其排名由新闻价值与发布时效驱动,不可复制也不应复制。清单同时覆盖了 bbc.com 与其英国变体 bbc.co.uk、以及澳大利亚的 news.com.au 和 abc.net.au,再次印证地区覆盖的设计意图。
8. 数据与研究平台(Data and Research Platforms)
statista.com, ibisworld.com, similarweb.comStatista、IBISWorld 提供付费行业数据,SimilarWeb 提供流量情报。它们排名靠前是因为被广泛引用为"数据来源",属于参考对象而非竞争对手。
9. 目录、点评与列表站点(Directories, Reviews, and Listings)
maps.google.com, tripadvisor.com, yelp.com, trustpilot.com, yellowpages.com.au, bark.com, thumbtack.com, angi.com, homeadvisor.com, truelocal.com.au, hotfrog.com.au, productreview.com.au对本地服务类关键词,这类站点(点评站、黄页、本地目录)是 SERP 常客。它们通过聚合商家信息获得排名,你的单站点页面无法也不应模仿其列表形态。此类别与seo-local、seo-maps等本地 SEO 技能场景强相关。
10. 比价与聚合站点(Comparison and Aggregator Sites)
finder.com.au, canstar.com.au, iselect.com.au, mozo.com.au, comparethemarket.com.au, cmsmarket.com比价站是商业意图关键词(如保险、贷款、能源)的典型"非内容竞争者"。它们通过结构化比价表格与 CTA 转化获利,其页面形态(工具型/表格型)与内容型页面有本质差异。注意该类别与"市场平台"类别的区别:电商聚合卖货,比价站卖"比较过程"。
11. 招聘板(Job Boards)
seek.com.au, indeed.com, glassdoor.com, jora.com, linkedin.com/jobs招聘板是"雇佣市场"而非"内容市场"。注意linkedin.com/jobs是一个路径级排除示例——它出现在域名类清单中,但实际上排除的是 LinkedIn 域名下的特定路径,这正好衔接了后文"URL Path Patterns"的规则设计逻辑。
12. SEO 与营销工具页(SEO and Marketing Tool Pages)
semrush.com, ahrefs.com, moz.com, neilpatel.com, backlinko.com, searchengineland.com, searchenginejournal.com, yoast.com, screamingfrog.co.uk, majestic.com这是最容易被误判的一类:Neil Patel、Backlinko 的博客会为大量营销类关键词排名,看起来像"高质量内容竞争者"。但它们本质是 SEO 工具厂商的获客内容,其目标受众是 SEO 从业者而非终端消费者,与你服务的目标客户群不同。注意screaming frog.co.uk写法中域名与路径粘连(应为 screamingfrog.co.uk),这种排版瑕疵提醒我们在落地为代码时要用规范化 URL 解析而不是字符串精确匹配。
13. AI 平台(AI Platforms)
chat.openai.com, chatgpt.com, claude.ai, perplexity.ai, gemini.google.com, copilot.microsoft.com随着 AI 聊天产品在 SERP 中频繁出现(常以品牌页、帮助页形式),此类别将 AI 平台域名明确纳入排除范围。这类页面出现于搜索结果,通常是用户在搜索某个 AI 产品本身,属于导航意图而非商业竞争。
14. 政府与学术域名(Government and Academic Domains)
任何以 .gov, .gov.au, .gov.uk, .gov.nz, .gc.ca 结尾的域名 任何以 .edu, .edu.au, .ac.uk, .ac.nz 结尾的域名这两类是后缀级(TLD 级)规则而非域名列表,代表过滤逻辑的第三种形态:按顶级域/二级域后缀匹配。政府域名对 YMYL 关键词(法律、政策、公共卫生)占据权威地位;学术域名对学术与研究类关键词(.edu、.ac.uk、.ac.nz 等)同样如此。设计实现时,这两条规则需要做后缀匹配而非完全相等匹配。
三类规则的形态总结
从上述 14 类可以归纳出排除规则的三种匹配形态,这也是落地实现时的核心设计点:
| 匹配形态 | 示例 | 实现要点 |
|---|---|---|
| 完全域名匹配 | amazon.com,medium.com | 需要覆盖地区变体(.com.au、.co.uk) |
| 子域名/路径匹配 | maps.google.com,linkedin.com/jobs | 需对 host 与 path 分别处理 |
| 后缀匹配 | .gov、.edu、.ac.uk | 按 TLD/二级域后缀做 ends-with 判断 |
URL 路径排除模式:对"合法域名"的二次过滤
即使一个域名通过了域名级过滤(例如某个正常商业站点),其内部仍有大量非内容型 URL不应参与竞争对手评分。清单给出了明确的路径排除规则:
/tag/, /tags/, /author/, /category/, /archive/ → 列表页与归档页 /feed/, /rss/, /wp-json/, /wp-admin/ → 技术端点 /login, /signup, /register, /cart, /checkout → 功能页 /terms, /privacy, /cookie-policy, /disclaimer → 法律页 /sitemap, /robots.txt → 站点协议文件逐组解读
/tag/、/tags/、/author/、/category/、/archive/:这些是 WordPress 等 CMS 自动生成的聚合页,内容重复且质量参差,是典型的内容稀薄(thin content)页面。若计入评分,会严重拉低该竞争对手的"深度"得分,误导差距分析。/feed/、/rss/、/wp-json/、/wp-admin/:RSS 与 WordPress REST API 端点、管理后台,属于程序接口而非用户可见内容,在任何场景下都不应进入竞争分析。/login、/signup、/register、/cart、/checkout:转化功能页,无内容价值。/terms、/privacy、/cookie-policy、/disclaimer:法律合规页,对排名分析无意义。/sitemap、/robots.txt:站点协议文件,仅供爬虫使用。
路径规则的两个设计细节
- 路径形态不一致:
/tag/与/tags/被同时列出,说明规则需要覆盖单复数变体;/login未带尾斜杠而/tag/带尾斜杠,落地实现时应按"路径段前缀"匹配并对斜杠做归一化处理,避免因一个斜杠差异漏判。 - 与域名规则的衔接:
linkedin.com/jobs在域名类清单中出现,本质上是"域名 + 路径"的组合规则。这提示我们,一个完善的过滤器应由"域名黑名单 + 路径黑名单 + 后缀黑名单"三部分组成,并支持组合判断。
正确使用这份清单:四步操作法
excluded-domains.md 末尾给出了清单的标准使用流程,这是整个过滤逻辑的操作契约,必须完整继承:
- 抓取 SERP 结果后,逐条检查每个 URL 是否命中上述域名;
- 在竞争对手评分之前移除所有命中项(先过滤、后评分,顺序不可颠倒);
- 若过滤后剩余真实竞争对手不足 3 个,在简报中标注"竞争格局稀薄"(thin competitive landscape);
- 被过滤的域名绝不进入竞争对手分析表格。
第 3 步是整个流程中最容易被忽略的决策点。它的正确含义是:排名页被非竞争者占据,不代表"没有竞争",而是意味着该关键词的 SERP 竞争形态特殊——可能是 YMYL 词(权威源主导)、品牌词(官网主导)或高度聚合的电商词。此时合理的做法不是硬凑竞争对手,而是:
- 按 SKILL.md 的 Error Handling 表:将搜索范围扩展到部分匹配(partial-match)的竞争对手,并在简报中注明竞争格局稀薄;
- 或者转向长尾变体关键词,寻找 SERP 中真实商业站点能占据的位置。
同时注意步骤 2 的顺序敏感性:过滤必须在评分前完成。一旦某个百科或社交域名进入了评分环节,它的 Depth/Formatting/SEO/UX 得分会污染整张竞争对手评分表,进而污染 Topic Gaps、Depth Gaps、Quality Gaps 的判断,最终导致整份简报的"Winning Outline"偏离实际可超越的对象。
清单背后的方法论:与 SERP 聚类方法论的呼应
这份域名清单并非孤立存在,它与仓库中其他 SEO 技能形成方法论闭环,其中最直接的呼应来自 serp-overlap-methodology.md。该文档在第 5 条反模式(Anti-Patterns)中明确指出:
Never treat all domains equally.Wikipedia and Reddit appear in many SERPs. Consider filtering out ubiquitous domains (top 5 most common) before scoring, or weighting domain-specific results higher.
这句话与 excluded-domains 清单互为印证:
- 内容简报场景(seo-content-brief):通过静态域名黑名单,在"竞争对手评分"前剔除伪竞争者;
- 语义聚类场景(seo-cluster):通过"最常见域名统计"或权重调整,在"SERP 重叠度计算"前剔除无处不在的域名。
两者的共同底层逻辑是:Google 的排名结果中高频出现的域名并不都是有效信号,必须对"高频但无关"的域名做归一化处理,SERP 信号才可用于竞争分析或聚类决策。这也是为什么这份清单会被 SKILL.md 以 "Seereferences/excluded-domains.mdfor the full list" 的方式硬性引用——它是整个seo-content-brief技能"竞争对手分析"环节的前置必要条件。
落地实现建议:如何将清单工程化
虽然仓库中的清单以 Markdown 表格形式维护,但将其落地到自动化 SERP 分析管线时,需要把三类规则(域名、路径、后缀)转化为可执行逻辑。结合仓库中可用的工程能力,可以按如下思路设计:
数据来源与成本控制
- 使用 DataForSEO MCP 工具获取真实 SERP:
serp_google_organic_live_advanced(每 100 条结果约 $0.002),详见 cost-tiers.md; - 需要竞争对手域名情报时可用
dataforseo_labs_google_serp_competitors、dataforseo_labs_google_page_intersection等 Labs 工具,工具清单见 tool-catalog.md; - 每次调用前遵循成本审批流:
python3 scripts/dataforseo_costs.py check <endpoint>,调用后python3 scripts/dataforseo_costs.py log <endpoint> <cost>,避免预算失控。
过滤器的三层结构(伪代码级描述)
# 概念实现,非仓库现成代码 def is_excluded(url: str) -> bool: host = normalize_host(urlparse(url).netloc) # 小写、去 www、去端口 path = normalize_path(urlparse(url).path) # 去尾斜杠、解码 # 第 1 层:后缀规则(.gov/.edu 等) if host.endswith((".gov", ".gov.au", ".gov.uk", ".gov.nz", ".gc.ca", ".edu", ".edu.au", ".ac.uk", ".ac.nz")): return True # 第 2 层:域名黑名单(含子域名精确匹配,如 maps.google.com) if host in EXCLUDED_DOMAINS: return True # 第 3 层:路径黑名单(路径段前缀匹配) for pattern in EXCLUDED_PATH_PREFIXES: if path.startswith(pattern): return True return False工程化注意事项
- URL 归一化:先剥离协议、小写化 host、去除尾斜杠与跟踪参数,再执行匹配,避免
Example.com与example.com被当作两个域名; - 幂等性:一个 URL 可能同时命中域名规则与路径规则(如
linkedin.com/jobs),过滤器应保证同一 URL 只被移除一次,且移除后不再参与后续任何评分步骤; - 可维护性:清单按"类别"组织(百科/社交/聚合/政府等),意味着它天然适合扩展——新出现的平台类型(如新的 AI 平台)只需在对应类别追加域名,无需改动匹配逻辑;
- 地区化:清单中包含大量澳大利亚站点(whirlpool.net.au、seek.com.au、canstar.com.au 等),若目标市场在其他国家,应补充当地主流目录、比价与招聘站点。
常见误用与边界情况
结合 SKILL.md 的完整流程,以下误用场景需要特别规避:
| 误用方式 | 后果 | 正确做法 |
|---|---|---|
| 把过滤放在评分之后 | 评分表被伪竞争者污染 | 严格"先过滤、后评分" |
| 只过滤域名不过滤路径 | 竞争对手的 /tag/、/author/ 聚合页拉低深度得分 | 域名规则与路径规则同时启用 |
| 命中后硬凑 5 个"竞争者" | 简报基于错误样本 | 按 Error Handling 表扩展 partial-match 搜索并标注竞争稀薄 |
| 仅做字符串精确匹配 | 漏掉screaming frog.co.uk这类粘连写法、大小写变体 | 使用规范化 URL 解析 + host/path 分段匹配 |
| 忽略地区域名变体 | amazon.com.au 漏过过滤 | 覆盖主域名所有地区镜像 |
另外需要注意一个边界:路径规则中的/tag/、/category/等模式是前缀匹配。实现时应使用路径段级别的匹配(如path.startswith("/tag/"))而非盲目子串匹配,避免误伤/tagline、/categorize这类无关路径。
小结:一份清单,三个层次的价值
回顾全文,这份被折叠在skills/seo-content-brief/references/下的清单,实际承载了三层价值:
- 操作层:14 类域名 + 一批路径模式,构成了"哪些 SERP 结果不算竞争对手"的完整判定标准,可复制到任何内容分析工具或脚本中;
- 方法层:它把"竞争"定义为"同一商业形态、同一目标客户群、可被合理超越的内容页面",从而让 Depth/Formatting/SEO/UX 四项评分有了可靠的样本基础;
- 工程层:域名/路径/后缀三种匹配形态的设计,为自动化过滤器提供了清晰的可实现结构,与仓库中 DataForSEO 集成、成本控制脚本形成了完整的数据管线。
对于任何基于 SERP 做内容策略的从业者,建议将这份清单纳入自己的工作流:抓取结果 → 按三类规则过滤 → 评分 → 若不足 3 个真实竞争者则标注竞争稀薄并扩展搜索 → 再进入内容差距分析。只有先做对了"排除",后面的"评分"与"超越"才有意义。
【免费下载链接】claude-seoUniversal SEO skill for Claude Code. 26 sub-skills + 19 sub-agents covering technical SEO, E-E-A-T, schema, GEO/AEO, agent readiness (Lighthouse Agentic Browsing, WebMCP, llms.txt), backlinks, local SEO, e-commerce, international SEO, Google APIs, and PDF/Excel reporting. 9 optional extensions for live SEO data.项目地址: https://gitcode.com/GitHub_Trending/cl/claude-seo
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考