用户登录
个人主页 用户中心 我的订单 添加授权 管理授权
退出登录
用户登录 用户注册
欢迎来到 UC建站系统

网站新发的文章等了两周百度还没收录,手动去站长平台一条条提交又太慢。试了API推送接口,300条URL 5秒全部推完,第二天就查到了其中180条的收录记录。不是百度不收你的页面,是你没走对推送通道

📤
先说一个重要事实:百度MIP(Mobile Instant Pages)已于2023年6月正式下线。如果你还在找"MIP推送工具",说明你可能被过时的教程误导了。不过别急,MIP虽然没了,但百度搜索资源平台(站长平台)的主动推送功能一直在,而且现在推送方式比MIP时代更多、更快。这篇文章把当前可用的百度URL推送方案一次性说清楚。

一、百度MIP是什么,为什么它已经不重要了

百度MIP是2016年推出的移动端网页加速框架,核心思路是:网站按MIP规范改造页面→百度缓存MIP页面→用户在百度搜索时直接打开缓存版,加载速度极快。MIP页面在搜索结果里带"闪电"标识,对移动端点击率有明显提升。

但百度在2020年4月宣布MIP Cache服务下线,2022年9月宣布MIP服务正式下线,2023年6月彻底停止支持。下线原因也不复杂:MIP的封闭标准与W3C的开放Web标准冲突,加上AMP(Google的同类方案)全球式微,百度转向拥抱标准H5和更开放的移动适配方案。

MIP站点现在应该做什么?
· 如果你的网站还有MIP页面:去掉MIP专用标签(mip-img→img、mip-video→video等),恢复标准HTML
· 301重定向:把 mip.xxx.com 或 xxx.com/mip/ 的URL 301跳转到对应的标准移动页面
· 在百度搜索资源平台的"移动适配"中更新适配关系
· 核心页面速度跟不上就用CDN+图片懒加载+资源压缩来补,不需要MIP也能快

二、百度搜索资源平台的三种推送方式

MIP虽然没了,但百度搜索资源平台(ziyuan.baidu.com)的URL提交功能一直在迭代。目前有三种推送方式,各有各的适用场景。

推送方式原理每日额度速度适合场景
API推送调用百度接口,直接把URL推送给百度爬虫3000条/天(新站100条)最快新内容发布后即时推送
自动推送(JS)页面嵌入JS代码,用户访问时自动提交URL无限制实时所有页面兜底推送
站点地图(Sitemap)提交sitemap.xml,百度定期抓取无限制较慢全站URL索引
三种方式要组合使用:
API推送负责新内容的即时提交(快),JS自动推送负责所有页面的被动发现(全),Sitemap负责整体URL索引的兜底(稳)。三个通道全开,收录效率最高。如果只开一个,首选API推送。

三、API推送:最快收录的核心通道

3.1 获取推送Token

登录百度搜索资源平台(ziyuan.baidu.com)→ 添加并验证站点 → 点击左侧"普通收录"→"API提交"→ 复制接口调用地址中的token。接口地址格式:

http://data.zz.baidu.com/urls?site=https://www.yoursite.com&token=YOUR_TOKEN

3.2 PHP版推送脚本(WordPress直接能用)

<?php/*** 百度主动推送工具 - PHP版* 用法:放到网站根目录,访问 push.php 即可推送*/$api = 'http://data.zz.baidu.com/urls?site=https://www.yoursite.com&token=YOUR_TOKEN';// 待推送的URL列表(一行一个)$urls = array('https://www.yoursite.com/article/123.html','https://www.yoursite.com/article/124.html','https://www.yoursite.com/article/125.html',);$ch = curl_init();curl_setopt($ch, CURLOPT_URL, $api);curl_setopt($ch, CURLOPT_POST, true);curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);curl_setopt($ch, CURLOPT_POSTFIELDS, implode("\n", $urls));curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: text/plain'));$result = curl_exec($ch);curl_close($ch);$response = json_decode($result, true);echo "推送结果:\n";echo "成功: " . ($response['success'] ?? 0) . "\n";echo "剩余额度: " . ($response['remain'] ?? '未知') . "\n";?>

3.3 WordPress自动推送插件方案

如果用的是WordPress,更推荐用插件实现自动推送——文章发布时自动推送给百度,不需要手动操作:

<?php/*** WordPress自动推送到百度 - 发布文章时触发* 添加到主题的 functions.php 中*/function baidu_auto_push($post_id) {// 仅处理已发布的文章if (get_post_status($post_id) != 'publish') return;$api = 'http://data.zz.baidu.com/urls?site=https://www.yoursite.com&token=YOUR_TOKEN';$url = get_permalink($post_id);$ch = curl_init();curl_setopt_array($ch, [CURLOPT_URL            => $api,CURLOPT_POST           => true,CURLOPT_RETURNTRANSFER => true,CURLOPT_POSTFIELDS     => $url,CURLOPT_HTTPHEADER     => ['Content-Type: text/plain'],CURLOPT_TIMEOUT        => 10,]);$result = curl_exec($ch);curl_close($ch);// 记录推送日志$response = json_decode($result, true);update_post_meta($post_id, '_baidu_push_result', $response);}add_action('publish_post', 'baidu_auto_push');// 批量推送历史文章(在主题目录下创建 push-history.php 访问)function baidu_batch_push_history() {$api = 'http://data.zz.baidu.com/urls?site=https://www.yoursite.com&token=YOUR_TOKEN';$posts = get_posts(['post_status'    => 'publish','posts_per_page' => 100,'meta_query'     => [['key' => '_baidu_push_result', 'compare' => 'NOT EXISTS']],]);$urls = array_map(function($p) { return get_permalink($p); }, $posts);if (empty($urls)) {return "所有文章已推送过,无需重复推送";}$ch = curl_init();curl_setopt_array($ch, [CURLOPT_URL            => $api,CURLOPT_POST           => true,CURLOPT_RETURNTRANSFER => true,CURLOPT_POSTFIELDS     => implode("\n", $urls),CURLOPT_HTTPHEADER     => ['Content-Type: text/plain'],]);$result = curl_exec($ch);curl_close($ch);// 标记已推送foreach ($posts as $post) {update_post_meta($post->ID, '_baidu_push_result', 'batch_pushed');}$response = json_decode($result, true);return "批量推送完成:成功 " . ($response['success'] ?? 0) . " 条";}?>

3.4 Python版推送脚本(适合站群和批量操作)

import requestsimport jsonimport timefrom typing import Listclass BaiduPusher:"""百度主动推送工具 - Python版"""def __init__(self, site, token):self.api = f"http://data.zz.baidu.com/urls?site={site}&token={token}"self.pushed_count = 0self.failed_urls = []def push(self, urls: List[str]) -> dict:"""推送URL列表,返回API响应"""try:resp = requests.post(self.api,data="\n".join(urls).encode("utf-8"),headers={"Content-Type": "text/plain"},timeout=30)result = resp.json()if result.get("success"):self.pushed_count += result["success"]print(f"✅ 成功推送 {result['success']} 条,剩余额度: {result.get('remain', 'N/A')}")else:print(f"❌ 推送失败: {result}")self.failed_urls.extend(urls)return resultexcept Exception as e:print(f"❌ 推送异常: {e}")self.failed_urls.extend(urls)return {"error": str(e)}def push_batch(self, urls: List[str], batch_size=200):"""分批推送(每批最多2000条,建议200条一批)"""for i in range(0, len(urls), batch_size):batch = urls[i:i + batch_size]print(f"推送第 {i//batch_size + 1} 批 ({len(batch)} 条)...")self.push(batch)time.sleep(1)  # 批次间隔1秒,避免频率过高print(f"\n总计成功推送: {self.pushed_count} 条")if self.failed_urls:print(f"失败 {len(self.failed_urls)} 条,已记录到 failed_urls")# ─── 使用示例 ───if __name__ == "__main__":pusher = BaiduPusher(site="https://www.yoursite.com",token="YOUR_TOKEN")# 从sitemap中提取URL批量推送urls = [f"https://www.yoursite.com/article/{i}.html" for i in range(1, 501)]pusher.push_batch(urls, batch_size=200)

四、JS自动推送:页面被访问时自动提交

JS自动推送不需要任何后端配置,只要在每个页面的HTML里加上一段JS代码,用户打开页面时自动把URL提交给百度。代码从百度搜索资源平台直接复制:

<!-- 百度自动推送JS代码 --><!-- 放在 </body> 标签前面 --><script>(function(){var bp = document.createElement('script');var curProtocol = window.location.protocol.split(':')[0];if (curProtocol === 'https') {bp.src = 'https://zz.bdstatic.com/linksubmit/push.js';} else {bp.src = 'http://push.zhanzhang.baidu.com/push.js';}var s = document.getElementsByTagName("script")[0];s.parentNode.insertBefore(bp, s);})();</script>

这段代码放到网站全局模板(比如WordPress的footer.php)里,每个页面被访问时都会自动提交一次。优点是零配置、全自动、不限额度,缺点是依赖用户访问——如果某个页面没人访问就不会被提交。

五、Sitemap提交:全站索引的兜底方案

Sitemap是三种方式里最慢但覆盖面最全的。百度建议Sitemap文件不超过5万个URL,文件大小不超过10MB。如果网站页面多,可以分拆成多个sitemap文件,然后用sitemap索引文件统一提交。

1 - 网站新发的文章等了两周百度还没收录,手动去站长平台一条条提交又太慢。试了API推送接口,300条URL 5秒全部推完,第二天就查到了其中180条的收录记录。不是百度不收你的页面,是你没走对推送通道 - UC建站系统

WordPress自动生成Sitemap

# 方法一:用插件(最简单)# 安装 Yoast SEO 或 Rank Math,自动生成 sitemap.xml# 方法二:PHP手动生成(无需插件)# 在主题目录创建 sitemap-gen.php:<?phpheader('Content-Type: application/xml; charset=utf-8');$posts = get_posts(['numberposts' => 5000, 'post_status' => 'publish']);echo '<?xml version="1.0" encoding="UTF-8"?>';echo '<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">';foreach ($posts as $post) {echo "<url><loc>" . get_permalink($post) . "</loc><lastmod>" . get_the_modified_date('c', $post) . "</lastmod></url>";}echo '</urlset>';?>

六、在线推送工具:不想写代码就用这些

如果只是偶尔推送几条URL,或者不想部署代码,下面这些在线工具直接输入URL和token就能推:

工具名称核心功能免费
百度搜索资源平台自带官方后台手动输入URL提交,单次最多20条
懒人工具 - 百度API推送在线批量推送,支持实时状态反馈,额度智能提醒
工具匠 - 百度主动推送批量提交URL,直接对接百度API接口
福娃工具 - 百度提交批量提交URL,专为SEO人员设计
在线工具的安全注意:
在线推送工具需要你输入站点的推送Token。这个Token有推送权限,泄露后别人可以冒用你的额度。建议只在可信的在线工具上使用,或者直接用本地脚本推送。如果用在线工具,推送完成后可以去百度搜索资源平台重置Token。

七、推送失败?先查这五个原因

1. Token过期或无效

检查百度搜索资源平台的API提交页面,确认Token是否还有效。Token可以在平台后台重新生成。如果站点刚验证通过,等几分钟再试,有时候生效有延迟。

2. 日推送额度用完

新站每日100条,老站3000条。API返回的remain字段会告诉你还剩多少额度。如果额度不够,改用JS自动推送和Sitemap来补充。

3. URL格式不对

推送的URL必须和站长平台验证的站点域名完全一致。验证了www就推www开头的URL,验证了不带www就推不带www的。URL要包含协议头(https://),末尾不要有空格和换行符。

2 - 网站新发的文章等了两周百度还没收录,手动去站长平台一条条提交又太慢。试了API推送接口,300条URL 5秒全部推完,第二天就查到了其中180条的收录记录。不是百度不收你的页面,是你没走对推送通道 - UC建站系统

4. 页面本身被百度屏蔽

如果页面内容违规、被robots.txt禁止抓取、或者网站被百度惩罚,推送成功也不会收录。先在百度搜索资源平台检查站点状态和抓取诊断。

5. 推送频率过高

虽然API没有明确限频,但短时间内大量连续请求可能被暂时限制。建议每批之间间隔1-2秒,每批不超过200条URL。

八、推送之后怎么验证效果

推送完成不代表收录。需要通过以下方式验证推送是否生效:

API返回确认

推送后API返回的success字段就是成功推送的URL数量。remain是当日剩余额度。如果success > 0,说明推送通道没问题,URL已进入百度处理队列。

3 - 网站新发的文章等了两周百度还没收录,手动去站长平台一条条提交又太慢。试了API推送接口,300条URL 5秒全部推完,第二天就查到了其中180条的收录记录。不是百度不收你的页面,是你没走对推送通道 - UC建站系统

搜索site命令

在百度搜索 site:yoursite.com 查看已收录页面。新推送的URL通常1-7天内出现在结果中。API推送比Sitemap快得多,有时当天就能查到。

站长平台数据

百度搜索资源平台 → 数据统计 → 索引量,查看收录趋势。注意索引量数据有1-3天延迟,推送后不要立刻去查。

九、站群和批量站点的推送策略

如果管理多个站点,逐个去平台手动推送效率太低。下面是站群场景的高效推送方案:

import jsonimport requestsimport timefrom datetime import datetimeclass MultiSitePusher:"""多站点批量推送器"""def __init__(self, config_file="sites.json"):"""从配置文件加载站点列表"""with open(config_file, "r", encoding="utf-8") as f:self.sites = json.load(f)self.results = {}def push_all(self):"""遍历所有站点执行推送"""for site in self.sites:name = site["name"]domain = site["domain"]token = site["token"]print(f"\n{'='*50}")print(f"站点: {name} ({domain})")pusher = BaiduPusher(domain, token)# 这里可以接入各站点自己的URL生成逻辑urls = site.get("urls", [])if urls:pusher.push_batch(urls)self.results[name] = {"pushed": pusher.pushed_count,"failed": len(pusher.failed_urls),"time": datetime.now().isoformat()}time.sleep(2)  # 站点间间隔# 输出汇总报告print(f"\n{'='*50}")print("📊 多站点推送汇总:")for name, result in self.results.items():print(f"  {name}: 成功 {result['pushed']} 条,失败 {result['failed']} 条")return self.results# sites.json 配置文件格式:# [#   {"name": "主站", "domain": "https://www.site1.com", "token": "xxx"},#   {"name": "分站A", "domain": "https://www.site2.com", "token": "yyy"}# ]

十、从MIP过渡到现代移动端优化

MIP退出历史舞台后,移动端SEO的核心策略回到了这些基础但有效的事情上:

优化方向具体措施对标MIP的效果
页面加载速度CDN加速、图片WebP格式+懒加载、CSS/JS压缩合并、服务端开启Gzip/Brotli替代MIP缓存加速
移动适配响应式设计或独立移动站+适配标注,百度搜索资源平台提交移动适配关系替代MIP移动标识
结构化数据添加JSON-LD结构化数据(Breadcrumb、Article、FAQ、Product等)替代MIP组件富展示
URL规范化统一使用HTTPS、规范Canonical标签、301处理重复URL提升收录效率

UC建站系统的百度推送集成方案

对于使用UC建站系统的用户,系统内置了百度推送管理中心,多站点推送一站式搞定:

自动推送配置
填入Token后,新文章发布自动推送到百度,无需每次手动操作。支持设置推送延迟(发布后N分钟再推)
批量历史推送
一键将全站历史文章批量推送给百度,自动分批次、控频率,避免超额度
推送效果追踪
记录每次推送的URL、时间、API返回结果,可视化展示推送成功率趋势
多站点统一管理
一个面板管理所有站点的Token和推送配置,批量操作,汇总推送报告
额度智能调度
自动监控各站点当日剩余推送额度,智能分配推送队列,优先推送新发布的高价值页面
收录状态监控
对接百度搜索资源平台数据,自动检测推送URL的收录状态,未收录的自动重新推送

最后说几句

百度MIP已经彻底成为历史,但URL主动推送这件事不仅没过时,反而比MIP时代更重要了——因为现在没有MIP缓存帮你加速收录,全靠推送效率。三种推送方式里,API推送是主力,JS自动推送是辅助,Sitemap是兜底。三个通道全开,再加上页面本身的内容质量和加载速度过关,收录就不会是问题。

如果你之前一直在用MIP相关的老工具老教程,建议尽快切换到百度搜索资源平台的标准推送方案。Token在后台就能拿到,PHP或Python脚本几行代码就能集成到发布流程里,配置一次之后就是全自动的了。

相关推荐
在线客服
👇找客服拿折扣
QQ咨询&售后
在线时间
11:00 ~ 5:30
QQ:3155555535
👇联系QQ
👇联系WX
首页 程序 帮助 登录