2026-09-05 · 原文发布日
用n8n做SEO外链交集候选:找链接竞品却没链接你的域名
SEO外链拓展n8n流程:表单提交自己的域名和两三个竞品域名,调用DataForSEO的外链交集接口找出链接了全部竞品但没链接你的域名,结合你自己流量最高的页面,再批量估算候选域名流量并按域名权重、预估访问量和垃圾分打分;OpenAI为每个候选挑一个合适的推介页面并写一句外联角度,结果逐行追加到Google Sheets并在表单完成页显示摘要。作者提醒交集收窄很快,竞品放五个通常就没有结果。
原文要点
来源说明该流程用表单收集你的域名、2至3个竞品域名和Sheets地址,调用DataForSEO Backlinks Domain Intersection找同时链接所有竞品但未链接你的引用域,再用Labs Relevant Pages取你自然流量最高的页面,用Bulk Traffic Estimation估候选域名流量,按domain rank、预估访问、spam score评分,交OpenAI挑推介页并写一句外联角度,追加到Google Sheets并在表单完成页显示摘要。作者称交集是AND且收窄很快,semrush加ahrefs共享13612个引用域,加入moz降到9773,放五个通常无结果;未排序头部可能是垃圾域,google.com这类谁都链接的平台会被剔除。
这次做成什么
做出一份可复核的SEO外链候选清单:输入自己的站点与少量竞品,输出“链接全部竞品但未链接我”的域名,附上评分、可推介页面和一句外联角度;当没有候选时明确返回无新增 prospect。练习方案采用合成域名与合成指标,不依赖真实外链数据。
准备什么
- n8n环境可新建表单触发、HTTP、分支、Sheets追加类节点
- DataForSEO账号且开通Backlinks与Labs API,用Basic Auth邮箱加API密码
- OpenAI凭据可用,工作流内模型需账号可访问
- Google Sheets凭据与含prospects页的表格,表头先按下方配置创建
- 准备自己域名、2到3个竞品域名、最低domain rank和候选上限
具体怎么做
建表单入口并限定输入
在n8n用Form Trigger收集your_domain、competitor_domains、min_domain_rank、prospect_limit、spreadsheet_url;把competitor_domains限制为2到3个,表单说明写明放五个通常交集为空。提交后先规范化域名:去协议、去路径、转小写。
求外链交集并排除已链接你
用DataForSEO Backlinks Domain Intersection,以所有竞品为AND条件,并排除已链接your_domain的域名;请求按domain rank排序,同时过滤spam score过高项,并把google.com这类链接所有人的平台直接丢弃。若结果为空,走“no new prospects”分支,在完成页显示没有新增候选,不继续写表。
取你可推介页面并估候选流量
调用DataForSEO Labs Relevant Pages拉取your_domain按预估自然流量排序的现有页面,作为只能从这些页里挑的约束;再对短名单调用Labs Bulk Traffic Estimation得到estimated visits。合成练习时用下方CSV代替真实返回,字段名保持一致。
评分并生成外联角度
合并候选域名与你的高流量页,score用domain rank、estimated visits、spam score加权:rank越高、visits越高加分,spam越高扣分。把top prospects和best pages交给OpenAI,要求每个候选只选一个已存在页面并写一句中文外联角度,禁止编造页面。
写表并回显摘要
把每个候选一行追加到Google Sheets的prospects页,字段映射用下方配置;最后在表单完成页输出HTML摘要,包含候选数、最高分域名、被跳过原因和本次使用的min_domain_rank。
可直接复制的材料
候选评分与表头配置
示例配置;score_formula为本站练习权重,真实业务可调整但需记录版本。
{
"site_design_note": "本站独立示例配置,不是原工作流文件;真实节点名、DataForSEO参数和模型名需在原模板核对。",
"spreadsheet": {
"tab": "prospects",
"headers": ["run_date", "your_domain", "competitors", "prospect_domain", "domain_rank", "estimated_visits", "spam_score", "score", "pitch_page", "outreach_angle", "status"]
},
"defaults": {
"min_domain_rank": 30,
"prospect_limit": 20,
"drop_platforms": ["google.com", "youtube.com", "facebook.com"]
},
"score_formula": "score = domain_rank*0.5 + min(estimated_visits,100000)/1000*0.4 - spam_score*0.8",
"field_mapping": {
"prospect_domain": "item.domain",
"domain_rank": "item.rank",
"estimated_visits": "item.traffic_estimated_visits",
"spam_score": "item.spam_score",
"pitch_page": "openai.selected_existing_page_url",
"outreach_angle": "openai.one_sentence_angle"
}
}OpenAI挑页与外联角度提示词
可直接粘贴;my_existing_pages需由上一步真实或合成页面列表注入。
你是SEO外链拓展助手。输入包含candidate_domains与my_existing_pages。任务:对每个candidate_domain,只能从my_existing_pages里选择一个最合理的pitch_page_url;若没有语义相关页面,输出pitch_page_url为空并说明no_fit。再写一句不超过45个汉字的中文outreach_angle,语气具体、不夸大、不承诺排名。只输出JSON数组,不要Markdown,不要解释。JSON字段固定为:domain,pitch_page_url,outreach_angle,no_fit_reason。禁止编造my_existing_pages之外的URL,禁止写客户真实个人信息。合成外链交集练习数据
合成CSV;links_all_competitors为true且already_links_you为false且is_platform为false才进入评分。
domain,rank,traffic_estimated_visits,spam_score,links_all_competitors,already_links_you,is_platform
example-a.com,72,18400,3,true,false,false
example-b.net,41,2600,12,true,false,false
junk-head.example,5,90,88,true,false,false
platform-copy.example,99,500000,1,true,false,true
already.example,66,9000,4,true,true,false输入与输出示例
本站虚构演示,非作者运行结果;score按上方练习公式口算,真实流量以API返回为准。
输入
your_domain=brand-demo.cn;competitor_domains=rival-one.cn,rival-two.cn;min_domain_rank=30;prospect_limit=3;my_existing_pages=/guide/tea,/compare/sets,/blog/origin对应输出
[{"domain":"example-a.com","pitch_page_url":"/compare/sets","outreach_angle":"你们已引用两套竞品对比,可补充我们按产地拆分的价格样本页。","no_fit_reason":""},{"domain":"example-b.net","pitch_page_url":"","outreach_angle":"","no_fit_reason":"no_fit"}];Sheets追加2行,example-a.com的score约72*0.5+18.4*0.4-3*0.8=40.96。做完检查这些
- 竞品为2到3个时才进入交集;输入5个竞品应提示可能无结果或返回空
- example-a.com因同时链接两竞品、未链接你且非平台而进入评分
- already.example因already_links_you=true被排除,platform-copy.example被平台规则剔除
- 无候选时完成页显示no new prospects且Sheets不追加空行
- OpenAI输出的pitch_page只能是my_existing_pages中已有URL
容易卡住的地方
- 交集是AND条件,竞品越多越容易空,五个通常不适合
- spam过滤与rank排序要先做,否则头部可能是alternate-tag农场类垃圾域
- DataForSEO费用作者称一次约五美分,只作归因参考,不保证当前价格
- Sheets表头缺列会让追加字段错位,先建prospects页再跑
- OpenAI模型可用性需在账号内确认,不能把练习输出当成真实API成功
本站借助AI整理来源事实,独立编写中文操作指南与示例。示例不代表实际运行结果;来源效果尚未由本站独立复现。付费模板与模型、服务费用分别计算。
- 原文标题
- Find link gap prospects from competitor backlinks with DataForSEO, OpenAI, and Google Sheets
- 原作者
- Daniel Shashko
- 原始发布日期
- 2026-09-05T09:17:14.117Z
- 来源
- https://n8n.io/workflows/19237