google推https几年了,百度开始宣传全面https,但是,百度站内搜索 自己的服务却不走https,接口报错。百度分享也是。

然后采用http://search.zhoulujun.cn/cse/search ,用了7-8个月的样子,还是继续,不声不响地 改变了配置了,突然就不通了——而且什么时候不通的都不知道

无赖,无奈,只有用google 自定义搜索引擎,用api 接口弄好

用google search API配置google站内搜索

谷歌搜索引擎定制化页面地址

https://cse.google.com/cse/setup/basic?cx=009558619093950188775:b3wc7giu_hw

复制 搜索引擎 ID ,保存

拖到最下面,找到

自定义搜索 JSON API

每天的查询数上限为 10000 次。

直接打开连接,可以阅读下内容,了解下

在此https://developers.google.com/custom-search/v1/overview

页面找到 API key,点击 GET A KEY 按钮,

复制key,保存

然后拼凑如下地址:

https://www.googleapis.com/customsearch/v1?q=css&siteSearch=zhoulujun.cn&key=AIzaSyC_pehzzjm8_6lbsegGNgct1-LaACSpvkM&cx=009558619093950188775:b3wc7giu_hw

就是你的谷歌自定义站内搜索引擎

谷歌的就完成了,再来看下百度:

用百度站内搜索api配置百度站内搜索

登录百度站内页面,点击 进入API管理后台

新建搜索引擎,点击 代码示例

在代码里面获取如下代码地址:http://zhannei.baidu.com/api/customsearch/apiaccept?sid=6351075239166713563&v=2.0&callback=init

直接下载,上传自己服务,引用。

然后配置如下代码

    var cse ;    //参数为您的API引擎ID,已自动填写,必需。
    var form=document.querySelector('searchBaidu-bd');//关键词输入框
    var textInput=document.getElementById('bdcsMain');//关键词输入框
    var btnInput=document.getElementById("search");//搜索按钮
    var listBox=document.getElementById("list");//搜索结果列表框
    var exchange=document.getElementById("exchange");//搜索结果列表框
    var exchangeEngine=document.getElementById("exchangeEngine");//搜索结果列表框
    var searchEngine=document.getElementById("searchEngine");//搜索结果列表框
    let params=getUrlParams(window.location.search);
    let initKeyword=params['q'];
    if(initKeyword){
        initKeyword=decodeURIComponent(initKeyword);
        textInput.value=initKeyword;
    }
    var googleEnable=false;
    function getUrlParams(str){
        let obj={};
        str.replace(/([^&=?]+)=([^&=?]*)/g,function (str,$1,$2) {
            obj[$1]=$2;
            return str;
        });         return obj;
    }     function searchBaidu (text) {
        cse.getResult(text, function (data) {
            console.info('百度搜索结果');
            console.log(data);
            createList(data,listBox)
        });
    }     function init () {
        cse= new BCse.Search("6351075239166713563");
        initKeyword&&searchBaidu(initKeyword);
    }     function createList(arr,select){
        var str='';
        if(arr&&arr.length){
            let tempArr = arr.map(function (data) {
                return ' <li class="article-li  ">' +
                    '                <a class="" href="'+data.linkUrl+'" target="_blank">'+data.title+'</a>' +
                    '                <time>'+data.dispTime+'</time>' +
                    '            </li>';
            });
            str=tempArr.join('');
        }else {
            str='<li> 没有找到相关内容——the suitable context had not been found all the time. </li>';
    }         select.innerHTML=str;
        searchEngine.innerHTML='百度';
        exchangeEngine.innerHTML='切换为谷歌搜索';
    }
    btnInput.addEventListener('click',function (e) {
        e.preventDefault();
        var text=textInput.value;
        if(googleEnable){
            text&&searchByGoogle(text);
        }else {
            text&&searchBaidu(text);
        }
    });     exchange.addEventListener('click',function (e) {
        e.preventDefault();
        window.location='?m=search&c=index&a=init&siteid=1&typeid=1&q='+textInput.value;
    });
    exchangeEngine.addEventListener('click',function (e) {
        e.preventDefault();
        var text=textInput.value;
        console.info('exchangeEngine.innerText');
        console.log('__________');
        if(exchangeEngine.innerText==='切换为百度搜索'){
            text&&searchBaidu(text);
            googleEnable=true;
            return false;
        }else {
            text&&searchByGoogle(text);
            googleEnable=false;
            return false;
        }     });     function hndlr(response) {
        // console.log(JSON.stringify(response));
        console.log(response);
        var str='';
        if(response&&response.items&&response.items.length){             let tempArr = response.items.map(function (data) {
                return ' <li class="article-li  ">' +
                    '                <a class="" href="'+data.link+'" target="_blank">'+data.htmlTitle+'</a>' +
                    '            </li>';
            });
            str=tempArr.join('');         }else {
            str='<li>没有找到相关内容</li>';
        }
        listBox.innerHTML=str;
        searchEngine.innerHTML='谷歌';
        exchangeEngine.innerHTML='切换为百度搜索';
    }     function searchByGoogle(keyword){
        $.ajax({
            type: 'GET',
            url: 'https://www.googleapis.com/customsearch/v1',
            data: {
                q: keyword,
                key:'AIzaSyC_pehzzjm8_6lbsegGNgct1-LaACSpvkM',
                cx:'009558619093950188775:b3wc7giu_hw',
                siteSearch: 'zhoulujun.cn'             },
            dataType: 'json',
            success: function (data) {
                console.info('google搜索结果');
                console.log(data);
                googleEnable=true;
                hndlr(data)
            },
            error:function (data) {
                hndlr();
                // let timer=setTimeout(function () {
                //     searchBaidu(textInput.value);
                //     clearTimeout(timer);
                // },800)
            }         });
    }     searchByGoogle(initKeyword);
    /*function setBaidu () {
        var  scriptEle=document.createElement('script');
        scriptEle.src="{JS_PATH_CDN}andy/baidu.zn.js";
        document.body.appendChild(scriptEle);
    }*/

具体代码和效果可以参看:

https://www.zhoulujun.cn/index.php?m=content&c=index&a=lists&catid=204&q=%E6%93%8D

没有做代码优化,只是抽点空把自己网站功能修复而已

按上面的操作的和应该可以配置

百度站内搜索https不可用切换api搜索,加上谷歌api站内搜索的更多相关文章

  1. PHPCMS站内搜索功能实现方法汇总,一文解决PHPCMS站内搜索问题

    1,https://blog.csdn.net/hzw19920329/article/details/80110673 点评:phpcms搜索功能实现方法,作者基于PHPCMS做个门户网站实现站内搜 ...

  2. 我的B站主页:https://space.bilibili.com/611212 内有视频题解

    我的B站主页:https://space.bilibili.com/611212 内有视频题解

  3. WordPress整站轻松开启HTTPS

    近两年来HTTPS取代HTTP已经成为大势所趋.早在2014年google Chromium安全团队提议将所有的HTTP协议网站标注为不安全.现在,Chrome浏览器已经开始执行这一标准了.从 Chr ...

  4. 【百度地图API】如何区分地址解析和智能搜索?

    原文:[百度地图API]如何区分地址解析和智能搜索? 摘要: 很多用户一直无法区分地址解析geocoder和智能搜索localsearch的使用场景.该文章用一个详尽的示例,充分展示了这两个类,共5种 ...

  5. centos 特殊权限 各种搜索命令 lsattr ,chattr,suid,sgid,sbit,file,type是否是内置命令,stat文件属性 ,whereis,locate,find,ln 内部命令和外部命令 第五节课

    centos 特殊权限 各种搜索命令 lsattr ,chattr,suid,sgid,sbit,file,type是否是内置命令,stat文件属性 ,whereis,locate,find,ln   ...

  6. 百度分享不支持https的解决方案

    站点自从开启 https 之后 ,百度分享就不能用了!但是又寻找不到类似百度分享的替代品.. 怎么办呢?要如何解决 百度分享不支持https的问题呢, 跟着博主动动手,让你百度分享仍然能在https下 ...

  7. 搭建实时同步data guard的最高可用-切换主备

    搭建实时同步data guard的最高可用-切换主备 首先保证主库在归档模式下:错过N次了 准备二台机器(hostname gw hosts ech0)host-only [root@node1 ~] ...

  8. 【百度地图API】如何制作公交线路的搜索?如331路

    原文:[百度地图API]如何制作公交线路的搜索?如331路 摘要: 从A点到B点的公交导航大家都知道怎么做了,那么单独查询331路公交车的公交路线,如何制作呢?我们一起来学习一下~ --------- ...

  9. 百度分享不支持Https的解决方案--本地化

    站点自从开启 https 之后 ,百度分享就不能用了!但是又寻找不到类似百度分享的替代品.. 怎么办呢?要如何解决 百度分享不支持https的问题呢, 跟着博主动动手,让你百度分享仍然能在https下 ...

随机推荐

  1. WebLogic使用总结(一)——WebLogic安装

    一.下载WebLogic 到Oracle官网http://www.oracle.com/ 下载WebLogic(根据自己的情况选择),本文档下载的是Generic WebLogic Server an ...

  2. 如何在 code blocks中使用 mkl库

    为了安装caffe, 所以安装了mkl, 现在想在codeblock的项目中使用mkl. 设置mkl环境变量: mkl安装好后默认是在/opt/intel/mkl中,其中/opt/intel/mkl/ ...

  3. python#读csv,excel,json数据

    #读csv,excel,json数据 with open('E:\\test\\xdd.csv','r') as f: for line in f.readlines(): print(line) i ...

  4. 给出两个单词word1和word2,写一个函数计算出将word1 转换为word2的最少操作次数。

    问题: 给出两个单词word1和word2,写一个函数计算出将word1 转换为word2的最少操作次数. 你总共三种操作方法: 1.插入一个字符 2.删除一个字符 3.替换一个字符 格式: 输入行输 ...

  5. CSS3 三次贝塞尔曲线(cubic-bezier)

    例子:transition:all 1s cubic-bezier(.21,.2,.65,.1) 最近在看animation模块,其中animation-timing-function 和 trans ...

  6. Centos7 编译安装 Nginx PHP Mariadb Memcache扩展 ZendOpcache扩展 (实测 笔记 Centos 7.0 + Mariadb 10.1.9 + Nginx 1.9.9 + PHP 5.5.30)

    环境: 系统硬件:vmware vsphere (CPU:2*4核,内存2G,双网卡) 系统版本:CentOS-7-x86_64-Minimal-1503-01.iso 安装步骤: 1.准备 1.1 ...

  7. harpoxy 配置

    HAProxy是一个使用C语言编写的自由及开放源代码软件,其提供高可用性.负载均衡,以及基于TCP和HTTP的应用程序代理. HAProxy特别适用于那些负载特大的web站点,这些站点通常又需要会话保 ...

  8. 电子产品使用感受之——我的Mac只有256GB,我的照片库该怎么办?

    说实话我使用过的Mac中最大的默认存储可能就是2011年开始使用的MacBook Pro了,机器型号大概是MC700,这台机器当年自带320GB 5400转机械硬盘,直到2016年因为使用率太高,机械 ...

  9. java--List、Set、Map的基础

    好像面试很多面试官都喜欢问这它们的一些问题,所以在这里我稍微总结一下,并把大佬们的文章链接贴在后面. 首先我们借鉴了https://www.cnblogs.com/SnowingYXY/p/67273 ...

  10. Install VirtualBox Guest Additions for elementary os

    Pls refer to: Install VirtualBox Guest Additions for elementary os