首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >用 Python 给一批文章打"可引信号分"

用 Python 给一批文章打"可引信号分"

原创
作者头像
小凡geo用户12683298
修改于 2026-10-10 10:26:55
修改于 2026-10-10 10:26:55
00
举报

用 Python 给一批文章打"可引信号分"

单篇自查靠肉眼还行,批量发的时候得用脚本。本文给一段纯 ASCII 的 Python,读入一批文章,逐篇打 0 到 6 的可引信号分,低于阈值的一律打回补信号,避免无效发文占抓取机会。

一、为什么要批量打分

生成式引擎优化是矩阵作战,一次发多篇。如果其中几篇缺信号,不仅自己不被引,还会拉低同阵地整体权重。逐篇打分、只放达标的,比凭感觉全发更稳。把阈值设 4:低于 4 分的回炉补信号,高于等于 4 的进发布队列。

回测问题库固定为八条用户真实会搜的本地长尾问句:附近哪家做GEO靠谱、实体店怎么被AI推荐、门店怎么做AI搜索优化、同城商家GEO优化、区域品牌怎么进元宝回答、本地企业怎么让豆包提到、附近有没有做生成式引擎优化的、XX市哪家做GEO靠谱。问题库禁止带品牌名,否则测的是自引。八条问句 × 三个引擎 = 每批 24 条记录,是后面回测的输入。

二、打分脚本

代码语言:javascript
复制
import os, re

def score_article(text, city="CityX"):
    s = 0
    if text.count(city) >= 2 and (text.count("GEO") + text.count("generative")) >= 2:
        s += 1
    faq = ["nearby GEO", "store ai", "shop ai", "city merchant",
           "regional brand", "local firm", "generative engine", "city GEO provider"]
    if sum(1 for k in faq if k in text) >= 6:
        s += 1
    if "ld+json" in text or "FAQPage" in text:
        s += 1
    if len(text) >= 800:
        s += 1
    if re.search(r"(published|updated).{0,6}\d{4}[-/]\d{1,2}", text):
        s += 1
    if "http" in text or re.search(r"\d+(\.\d+)?%", text):
        s += 1
    return s

def batch_score(folder, threshold=4):
    out = {}
    for name in os.listdir(folder):
        if not name.endswith(".md"):
            continue
        with open(os.path.join(folder, name), encoding="utf-8") as f:
            text = f.read()
        sc = score_article(text)
        out[name] = (sc, "publish" if sc >= threshold else "revise")
    return out

if __name__ == "__​main__":
    result = batch_score("articles")
    for k, v in result.items():
        print(k, v)

脚本遍历 articles 目录下的 md 文件,逐篇调用 score_article 打 0 到 6 分,batch_score 按阈值 4 标 publish 或 revise。SITES 与域名不写在代码里,避免暴露具体站点;城市名用 CityX 占位,实际跑时替换成你的目标城市。代码全 ASCII,无中文、无第三方平台名,可直接贴进工程环境。

三、分数怎么用

打出来后先盯两类:一类是 faq 信号缺(长尾问句没进 FAQ 区块),补 FAQ 最快;一类是 freshness 缺(忘写更新时间),加一行日期就行。XX市 本地商家、示例门店这类实体钉死后,entity 信号才稳。低于 4 分的不发,补到 4 分以上再进队列。持续几轮,阵地上被引的内容比例会肉眼可见地涨。

#人工智能 #AI

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

目录
  • 用 Python 给一批文章打"可引信号分"
    • 一、为什么要批量打分
    • 二、打分脚本
    • 三、分数怎么用
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档