当前位置:首页 >  站长 >  网站运营 >  正文

收录批量核查:200 个 URL 别再一条条搜了

 2026-09-09 09:52  来源: 互联网   我来投稿 撤稿纠错

  一键部署OpenClaw

发了 200 篇文章,过了两周想确认哪些被百度收了。到搜索框一条条敲 site: 查询,查到第 30 条手就废了。批量核查收录是每个内容站的刚需,但这件事有个必须先说清楚的边界:搜索引擎没有公开的收录查询 API,任何批量查询本质都是在和对方的反爬机制打交道,所以脚本的正确姿势是慢、稳、粗查,快准狠交给官方平台。

脚本的思路:读一个 URL 清单,逐条拼 site: 查询,从返回的 HTML 里判断有没有结果。判断规则要写得宽松——不同时期结果页的提示文案会变,规则太精确过两天就误判。同时每个请求之间加 8 到 15 秒随机延时,遇到验证码或非 200 直接返回 None 标记人工复查,千万别硬刚,把出口 IP 搭进去整批查询全完蛋。

import time, requests, random

HEADERS = {"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) "
"AppleWebKit/537.36 (KHTML, like Gecko) "
"Chrome/131.0.0.0 Safari/537.36"}

def check_baidu(url):
r = requests.get(
"https://www.百度.com/s",
params={"wd": "site:" + url},
headers=HEADERS, timeout=10)
if r.status_code != 200:
return None # 被风控,标记人工处理
if "百度安全验证" in r.text:
return None # 触发验证码,停止为宜
return "抱歉" not in r.text

urls = [line.strip() for line in open("urls.txt") if line.strip()]
for u in urls:
print(u, check_baidu(u), flush=True)
time.sleep(random.uniform(8, 15))

跑完把结果落成 CSV,三列:URL、状态(True 收录 / False 未收录 / None 待人工)、检查日期。None 的比例高就说明节奏太快,把延时再调大。验证脚本准确性别用全量清单,先抽 10 条和手工 site: 查询对照,判断规则对得上再放量。

# urls.txt 一行一个 URL
# https://www.网址 .com/seo/goaccess-log-panel.html
# https://www.网址 .com/seo/spider-404-audit.html

# 结果落盘
import csv
rows = []
for u in urls:
rows.append([u, check_baidu(u), time.strftime("%F")])
time.sleep(random.uniform(8, 15))
csv.writer(open("indexed_check.csv", "w", newline="",
encoding="utf-8-sig")).writerows(rows)

必须交代清楚口径问题:site: 查询结果只做参考,不作准数。百度侧的权威数据是搜索资源平台的普通收录和索引量工具,按天给全站收录曲线;Google 侧的权威数据是 Search Console 的“网页索引编制”报告,官方明确说明索引状态以该报告为准。脚本的正确用法是“定位到具体文章”的粗查——平台告诉你收录总量掉了,脚本帮你找到是哪 20 篇没进库,两者配合才闭环。清单排优先级也有讲究:新发布的文章排前面查,老文章一两个月核查一轮就够,别把时间花在不会变的存量上。

# Google 侧同理,查询参数换成 site:,解析逻辑要按
# Google 结果页调整;频率再放慢一档
# def check_google(url):
# r = requests.get("https://www.谷歌 .com/search",
# params={"q": "site:" + url},
# headers=HEADERS, timeout=10)

收尾提醒一句场景边界:这种批量查询脚本放在自己服务器上低频跑自己的站,属于灰色但普遍的运维手段;但拿去批量查别人家的站、或者开高并发跑,性质就变成爬虫对抗了,封 IP 是轻的。工具没有善恶,用法有。

相关阅读:批量核查别天天做,每周一次足够。《SEO 自动化总清单:日、周、月、季各该跑什么》把它排进每周组,配合日报三本账,收录波动周内闭环。

申请创业报道,分享创业好点子。点击此处,共同探讨创业新机遇!

相关文章

  • 把 access.log 转成 CSV:awk 之外的第二条路

    前几篇的awk报表很顺手,但它有两个天花板:一是结果只能打印在终端上,要给不懂命令行的同事看、要丢进Excel做透视表,就得有个通用格式;二是复杂逻辑(多条件组合、正则提取、跨行关联)用awk写起来越写越拧巴。这时候就该Python上场了——把日志解析成CSV,一条命令跑完,后面随便怎么加工。解析N

  • 软 404:页面活着,收录死了

    上面那篇说404要从日志里挖,这一篇说一个日志挖不出来的更阴险的坑:软404。它的定义Google官方写得很清楚——一个URL返回的是200成功状态码,但页面内容却在告诉用户“这个页面不存在”,有时甚至是没有主内容的空页面。从HTTP协议看它一切正常,从内容看它已经死了。软404的常见诱因官方也列了

  • 从日志里挖出蜘蛛天天撞的 404 死点

    站改版半年了,站内链接自认清理得干干净净,蜘蛛却还在日复一日地撞404。这些死点从哪来的?旧外链指向被删的文章、搜索引擎库里缓存的旧URL、老sitemap的残留、站内漏改的某个入口——单靠人脑想,永远想不全。好消息是蜘蛛会把每一次碰壁都老老实实记在你的日志里,去日志里捞就行。思路是三步:从蜘蛛抓取

    标签:
    seo优化
    404死链
  • 蜘蛛抓取返回码分布:收录下滑先查这里

    收录肉眼可见地掉,站长第一反应往往是内容出问题了,赶紧改标题补内容。先别动。收录下滑有个更常见的隐形诱因:蜘蛛一直在来,但每次都扑空——抓走一串5xx或者大面积404。抓取端不顺畅,搜索引擎会降低对你站点的抓取意愿,收录自然一茬不如一茬。这不是玄学,官方文档写得明明白白:Google的抓取文档说,站

  • 百度指数+5118关键词挖掘组合拳:从词库到内容规划的完整流程

    选题靠拍脑袋,写完了没人搜,这是内容站最常见的死法。问题往往不在文笔,在于你写的词压根没人在搜,或者搜的人根本轮不到你。挖词这一步省下的时间,后面都会变成无人访问的页面还回来。工具要分工。百度指数是方向仪,看的是趋势、需求图谱和人群画像,帮你判断一个核心词值不值得做、季节性怎么走;5118和爱站是挖

    标签:
    seo优化

热门排行

信息推荐