给 Firefox 添加自定义搜索引擎

姿势

Posted by kkzh on January 15, 2021

其实关于这个问题,网上已经有很多类似的文章了,这里只是做一个备份,再加上一点自己的总结。

一:搜索引擎网站

简单而又方便的方法,直接 mycroftproject 上面去搜索、安装。 大部分热门网站都已经有人添加了。



二:搜索书签

最简单,但不算最方便的方法,直接让浏览器添加搜索书签,大部分搜索框适用

首先,对搜索框右键,下图 对搜索框右键

其次,在红圈的关键词一栏输入你喜欢的关键词,下图 在红圈的关键词栏输入你喜欢的关键词

最后,到网址栏输入你刚才设置的关键词加空格,然后再输入你想要搜索的内容,回车,即可完成搜索。

如:g 1234

优点:简单



三:自定义编写

Firefox 支持 OpenSearch description format,我们可以自己写一个。

格式如下

<OpenSearchDescription xmlns="http://a9.com/-/spec/opensearch/1.1/"
                       xmlns:moz="http://www.mozilla.org/2006/browser/search/">
  <ShortName>[SNK]</ShortName>
  <Description>[Search engine full name and summary]</Description>
  <InputEncoding>[UTF-8]</InputEncoding>
  <Image width="16" height="16" type="image/x-icon">[https://example.com/favicon.ico]</Image>
  <Url type="text/html" template="[searchURL]">
    <Param name="[key name]" value="{searchTerms}"/>
    <!-- other Params if you need them… -->
    <Param name="[other key name]" value="[parameter value]"/>
  </Url>
  <Url type="application/x-suggestions+json" template="[suggestionURL]"/>
  <moz:SearchForm>[https://example.com/search]</moz:SearchForm>
</OpenSearchDescription>

代码好像很长,但不用慌,我们根本不需要看那段代码。

GET 请求:

现在大部分搜索引擎使用的都是 GET 请求,所以我们可以直接在网址栏里看到我们搜索的内容,而这长长的网址,正是我们需要的。

这里使用B站的搜索链作为参考,因为后缀参数够少,更直观。

直接在 B 站搜索 “aaaa”,可以看到网址栏里显示的是 “https://search.bilibili.com/all?keyword=aaaa” ,我们直接把 “aaaa” 替换成 “{searchTerms}”,我们需要的网址就准备好了:

https://search.bilibili.com/all?keyword={searchTerms}

为了更方便添加到浏览器,需要使用到一个扩展:Add custom search engine

安装好后,点击扩展,会进入一个新标签:
Name 一栏输入搜索引擎的名字:bilibili

Search URL 一栏输入搜索引擎URL:https://search.bilibili.com/all?keyword={searchTerms} 或者https://search.bilibili.com/all?keyword=%s

Icon为搜索引擎的图标,正常情况会自动载入网站图标

最后点击 Add custom search engine 按钮,扩展会上传自动编写好的 xml 文件到一个临时网站来进行安装,完成。


POST 请求:

对于 POST 请求,步骤就多了几步。

首先打开搜索网页,按 F12 开启调试工具,选择到“网络”标签。

然后设置网页搜索的各个选项,再随便输点内容,比如“1234”,紧接着开始搜索,就能看到“网络”标签里捕捉到了各种网络参数。

我们只需要第一项,选中后弹出新的签到,复制“请求”栏里的全部内容,然后把之前输入的“1234”替换成 {searchTerms},这样就获取到全部的参数了。

紧接着就按照 GET 请求的方法添加吧,但获取的“POST 查询参数”要粘贴在 POST 参数栏,不要直接粘贴在网址栏。



在 mycroftproject 网站提交搜索引擎

在方法一,我们介绍了这个网站的用途,但有时候我自己也想提交一个网址,这样方便了他人,也方便了自己,应该怎么提交呢?

其实也很简单,因为这网址采用无登记的形式上传的,所以在首页里找到 Create/Submit Plugin 选项,就能直接提交了。 但想要删除自己上传的搜索引擎,就有点麻烦了,因为只能自行发邮件跟管理员联系。 所以提交前一点要注意核对,测试。

注意! 上传搜索引擎的图标时,图片的文件名,一定要改一个不可能和别人重名的文件名,否则当你安装你的搜索引擎时,图标会显示其它引擎的图标,要修改图标也是非常麻烦的,所以这点要注意。