首页 > 其他分享 >给网站引入各大搜索引擎的关键字提示,白给的接口薅他羊毛。

给网站引入各大搜索引擎的关键字提示,白给的接口薅他羊毛。

时间:2023-12-19 17:02:48浏览次数:37  
标签:sug searchValue 白给 value 搜索引擎 关键字 let sign dataMap

拥有一个关键词提示属于是导航网站必要的了

因为网站是个导航网站,有一个搜索框,用户搜索时需要像百度一样有个搜索提示关键词列表。

之前只是用百度,现在给增加了好几个,想换那个就换那个了,直接上图片

微信截图_20230928155459.png

可以配置属于是想选哪个选哪个,谁提示不爽就不用它,我可以用着bing的搜索引擎却使用的360的提示词,哈哈哈

微信截图_20230928155844.png

下面把使用的方法例子写一个

/**
 * 获取各大搜索引擎的关键字列表 
 */

/** 获取随机小写字母 */
function getRandomLetters(number) {
    const alphabet = 'abcdefghijklmnopqrstuvwxyz';
    let value = '';
    for (let i = 0; i < number; i++) {
        value = value + alphabet[Math.floor(Math.random() * alphabet.length)];
    }
    return value;
}
/** 获取百度关键词列表 */
let dataMap = {};  //缓存列表
function getBaiDuSug(searchValue){
    return new Promise((r)=>{
        if(dataMap[searchValue]){
            r(dataMap[searchValue]);
            return;
        }
        /** 创建一个唯一标识用于接受数据,防止数据对应不齐 */
        let sign = `sug_sign_${getRandomLetters(3)}_${new Date().getTime()}`;
        let sug = document.createElement('script');
        window[sign] = (data)=>{
            setTimeout(()=>{sug.remove();},1000);  //删除元素
            let list = data.s || [];
            dataMap[searchValue] = list;
            r(list);
        }
        sug.src = `https://suggestion.baidu.com/su?wd=${encodeURIComponent(searchValue || '')}&cb=window.${sign}`;
        document.getElementsByTagName('body')[0].appendChild(sug);
    });
}

使用的时候直接调用getBaiDuSug('vue').then(res=>{console.log(res)});就能获取这个关键词推荐了。嘎嘎香。 点击查看所有例子,注意还有评论中列举的哟。

标签:sug,searchValue,白给,value,搜索引擎,关键字,let,sign,dataMap
From: https://blog.51cto.com/u_16400430/8891087

相关文章

  • java,类、实例化、构造方法、this关键字、方法重载
    编写类的步骤:1、定义类名2、编写类的属性3、编写类的方法public 访问修饰符,表示在整个项目中都可以调用,也可以用其他词使用class关键字来定义类,如下,定义一个Cat类给了属性和方法,动态方法是没有static的publicclassCat{//属性Stringni_chen;Stringco......
  • Java-并发编程-03深入理解并发编程概念以及相关关键字
    浅入并发编程三个核心概念在并发编程中,我们通常会遇到以下三个问题:原子性问题,可见性问题,有序性问题。我们先看具体看一下这三个概念:1.原子性原子性:即一个操作或者多个操作要么全部执行并且执行的过程不会被任何因素打断,要么就都不执行。举个最简单的例子,大家想一下假如为一......
  • C#中ref关键字的用法总结
    C#中ref关键字的用法总结 ref表示引用的意思,C#中它有多种用法,这里简单总结一下:1、按引用传递参数具体可见:C#中的值传递与引用传递(in、out、ref)2、引用局部变量引用局部变量指的是在变量声明时使用ref关键字(或者使用refreadonly表示未只读),表示这个变......
  • C#where关键字约束
    C#where关键字约束 where关键字的用法where关键词一个最重要的用法就是在泛型的声明、定义中做出约束。约束又分为接口约束、基类约束、构造函数约束、函数方法的约束。1.接口约束,泛型参数必须实现相应的接口才可以usingSystem;usingSystem.Collections.Generic;usi......
  • 盘点 swift 中 where 关键字的所有用法,你知道多少?
    盘点swift中where关键字的所有用法,你知道多少?杂雾无尘博观而约取,厚积而薄发​关注他 关注我,每天分享一个关于iOS的新知识   前言where 是Swift中一个强大的关键字,可以轻松过滤掉一些值。它可以用于许多不同的表达式中,今天就来盘点......
  • 关键字 开发-12 yaml文件实现参数化
    前言说到接口自动化,那肯定少不了参数化,这也是pytest的一个特色之一,相比与unitest实现起来更加方便好用。实验参数化常见的就是使用@pytest.mark.parametrize在测试函数或类中定义多组参数,在用例中实现参数化。#参数化方式一[email protected]("test_in......
  • Python 异步编程之yield关键字
    背景介绍在前面的篇章中介绍了同步和异步在IO上的对比,从本篇开始探究python中异步的实现方法和原理。python协程的发展流程:python2.5为生成器引用.send()、.throw()、.close()方法python3.3为引入yieldfrom,可以接收返回值,可以使用yieldfrom定义协程Python3.4加入了asy......
  • 搜索引擎优化方式•SEO搜索引擎优化原理
    搜索引擎优化方式•SEO搜索引擎优化原理搜索引擎优化的根本,是指利用搜索引擎工作的基本原理,采用互联网数据分析的结果,用关键词选取与投放、网络平台的选取与投放、网站结构的调整来进行优化,是优化者结合搜索引擎工作原理与互联网消费者的行为数据分析,提高企业排名的优化方式。......
  • 线性探测法的查找函数 整型关键字的散列映射
    一、 实验目的掌握哈希表二、  实验内容实验题目线性探测法的查找函数整型关键字的散列映射  三、   设计文档 1.   2.   四、   源程序  1. PositionFind(HashTableH,ElementTypeKey){    intflag=0;    Positionp......
  • 整型关键字的散列映射
    #include<iostream>#include<vector>#define_CRT_SECURE_NO_WARNINGS1usingnamespacestd;intmain(){intn,p;//scanf("%d%d",&n,&p);cin>>n>>p;vector<int>a(p,-1);while(n--){intx;......