Skip to content
Donghai's Blog
Go back

如何从归档页批量获取URL并提交到Bing Webmaster Tools

用一行JavaScript代码从博客归档页批量提取所有文章URL,快速提交到Bing Webmaster Tools(每日限额100条),并保存为浏览器书签实现一键自动化操作。

封面图

Table of contents

Open Table of contents

前言

在上一篇文章《通过手动提交工单解决Bing不收录网站问题》中,我分享了如何通过 Bing 官方工单解决网站收录问题。工单回复中除了建议耐心等待索引更新外,还提到可以主动在 Bing Webmaster Tools 提交 URL,该工具每日支持最多提交 100 个 URL。

这个限额,对个人博客来说是绰绰有余的,本文将介绍如何用 JavaScript 代码从归档页批量提取所有文章 URL,并提交到 Bing Webmaster Tools,以及如何将其保存为书签工具实现一键自动化

NOTE

官方文档参考:URL submission

通过归档页获取所有文章的 URL

思路很简单,看了下 Papermod 主题的归档页代码,这个归档页已经把所有文章 URL 明明白白地暴露在 DOM 里了,用控制台一把梭就行,具体操作如下:

首先,打开博客的归档页,然后按 F12 打开开发者工具,切换到 Console(控制台),把下面这段 JavaScript 代码粘贴进去并执行:

console.log(
  [...document.querySelectorAll(".archive-entry a.entry-link")]
    .map(a => a.href)
    .join("\n")
);

执行后,Console 中会输出当前归档页中所有文章的完整 URL,例如:

https://example.com/posts/abc/
https://example.com/posts/def/
https://example.com/posts/ghi/

直接全选复制,然后粘贴到 Bing Webmaster Tools 的「提交 URL」页面即可

控制台打印文章链接

在 Bing Webmaster Tools 中提交 URL

进入 Bing Webmaster Tools 的 URL 提交页面,把刚才复制的链接一次性粘贴进去,提交即可

Bing Webmaster Tools 提交 URL

对于文章数量不多的个人博客来说,这种方式简单直接,不需要额外配置 sitemap 或接口,等以后量多了再考虑自动化吧。

以后还能用的小技巧

如果以后还需要反复提交(比如新文章集中发布),可以把上面的 JavaScript 代码保存成一个浏览器书签(Bookmarklet)

javascript:(()=>{console.log([...document.querySelectorAll('.archive-entry a.entry-link')].map(a=>a.href).join('\n'))})()

下面以 Edge 浏览器为例,简单记录一下步骤:

(1)浏览器访问 edge://favorites/,打开收藏夹页面

(2)点击 添加收藏夹

添加收藏夹

(3)填写名称(比如:获取归档页文章 URL),URL 处粘贴上面的 JavaScript 代码

添加收藏夹时填写的信息

以后只要打开归档页,点击这个书签,就能在控制台里一次性拿到所有文章的 URL,复制提交即可

其他说明

提交 URL 的时候,需要把最后面的 ”/” 放进去吗?

通过前面的代码获取到的文章链接,形式一般是:

https://example.com/posts/abc/

这里最后的斜杠并不是多余的,它的实际含义是:

/posts/abc/ : 目录 /posts/abc/index.html : 真正的页面

如果提交的是:

https://example.com/posts/abc

浏览器会先发生一次 301/308 重定向,再跳转到 /posts/abc/,对搜索引擎来说,这样依然是可以抓取的,只是中间多了一次跳转。

既然可以直接提交最终地址,就没必要多绕一步,所以还是保留末尾的斜杠吧


Share this post on:

Previous Post
我日常收藏的优质网站资源导航(持续更新)
Next Post
PaperMod 使用 Zeoseven 自定义网页字体
BlogsClub Meo Forever Blog