-
2017-12-04 11:09:01
jsp
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <% String path = request.getContextPath(); String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/"; %> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <base href="<%=basePath%>"> <title>My JSP 'index.jsp' starting page</title> <meta http-equiv="pragma" content="no-cache"> <meta http-equiv="cache-control" content="no-cache"> <meta http-equiv="expires" content="0"> <meta http-equiv="keywords" content="keyword1,keyword2,keyword3"> <meta http-equiv="description" content="This is my page"> <!-- <link rel="stylesheet" type="text/css" href="styles.css"> --> <script src="js/jquery-1.8.3.js" type="text/javascript"></script> <script type="text/javascript"> $(function() { $("#name").keyup(function(){ document.getElementById("mess").style.display="block"; //$("#mess").attr("display","block"); //alert("1234") $.ajax({ url : "ajaxServlet", //要提交的URL路径 type : "post", //发送请求的方式 data : {ser:$("#name").val()}, //要发送到服务器的数据 dataType : "text", //指定传输的数据格式 success : function(result) {//请求成功后要执行的代码 var arr = result.split(","); //alert("1"); $("#mess").html(""); for(var i=0;i<arr.length;i++){ $("#mess").append("<div class='mouse' onmouseover='mouseover(this);' onmouseout='mouseout(this);' onclick='click1(this);'>"+arr[i]+"</div>"); } }, error : function() { //请求失败后要执行的代码 alert("验证失败!!"); } }); }); }); function mouseover(v){ v.style.backgroundColor="#F4F2F4"; } function mouseout(v){ v.style.backgroundColor="white"; } function click1(v){ var value = v.innerHTML; $("#name").val(value); $("#mess").html(""); } </script> <style type="text/css"> body{width: 1024; } table{margin-top: 50px; width: 70%} tr{height: 50px} .t1{ background-color:#DFFFFF } #name{ width: 400px;} #mess{position: absolute; top: 87px;left: 390px;display: none} </style> </head> <body> <form action=""> <table align="center"> <tr> <td class="t1" width="25%">承租人名称</td> <td class="t1" width="45%"> <input id="name" type="text" > </td> </tr> <tr> <td class="t1" width="25%">友情提示</td> <td class="t1" width="45%"> </td> </tr> <tr> <td class="t1" width="25px">是否锁定</td> <td class="t1" width="45%"> </td> </tr> </table> <div id="mess" style="width: 400px; float: left;"></div> </form> </body> </html>
servlet
package com.lq.servlet; import java.io.IOException; import java.sql.ResultSet; import java.util.ArrayList; import java.util.List; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import com.lq.utils.JdbcUtil; public class AjaxServlet extends HttpServlet { /** * The doGet method of the servlet. <br> * * This method is called when a form has its tag value method equals to get. * * @param request the request send by the client to the server * @param response the response send by the server to the client * @throws ServletException if an error occurred * @throws IOException if an error occurred */ public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { this.doPost(request, response); } /** * The doPost method of the servlet. <br> * * This method is called when a form has its tag value method equals to post. * * @param request the request send by the client to the server * @param response the response send by the server to the client * @throws ServletException if an error occurred * @throws IOException if an error occurred */ public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { request.setCharacterEncoding("UTF-8"); response.setCharacterEncoding("UTF-8"); String ser= request.getParameter("ser"); System.out.println(ser); JdbcUtil ju=new JdbcUtil(); String sql="select name,card from t_users t where name like '%"+ser+"%'"; System.out.println(sql); //List list=new ArrayList(); String s=""; try { ResultSet rs=ju.querry(sql, null); while(rs.next()){ System.out.println(rs.getString(1)+"_"+rs.getString(2)+","); s=s+(rs.getString(1)+"_"+rs.getString(2)+","); } } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } response.getWriter().print(s); } }
更多相关内容 -
SEO工具脚本,Python百度下拉框关键词采集工具
2020-08-04 19:59:33对于词的研究,想必每个seoer都知道,而除了比较热门的百度相关搜索词之外,百度下拉框关键词应该也是不少人研究的范围,不过大部分人都是针对下拉框词的刷量,毕竟百度下拉框关键词采集已经泛滥...对于词的研究,想必每个seoer都知道,而除了比较热门的百度相关搜索词之外,百度下拉框关键词应该也是不少人研究的范围,不过大部分人都是针对下拉框词的刷量,毕竟百度下拉框关键词采集已经泛滥成灾了。
百度下拉的官方正式叫法是百度推荐词(Baidu Suggest Word),民间又称之为百度联想词或百度下拉菜单。它是百度为了方便广大网民搜索,提高输入效率而推出的一项服务。
举例,当我们在百度输入“营销”这两个字的时候,百度就从推荐词条库中检索出以“营销”这两个字打头的词条,并根据搜索量从大到小排序,组建成下拉菜单。百度下拉菜单的最大数量为10条。
百度下拉框关键词的意义:
可以作为长尾词使用,作为标题使用,毕竟是用户搜索时候可以触发关键词搜索选择。
不少人将下拉词直接进行引流,比如曝光品牌,引导到指定的页面,你可以进行搜集分析竞争对手的相关操作,或者自己去曝光自己的品牌,见仁见智吧!
网络上留存有不少下拉词的采集工具和源码,这里,本渣渣早就已经整理过了,这里再次分享一下吧,昨晚有老哥问起,其实来来去去都是这些东西,没啥特别的吧!
版本一:
直接网页抓包实现下拉词的采集
def get_keywords(word): url=f"https://www.baidu.com/sugrec?pre=1&ie=utf-8&json=1&prod=pc&wd={word}" html=requests.get(url) html=html.json() #print(html) #print(html['g']) key_words=[] for key_word in html['g']: print(key_word['q']) key_words.append(key_word['q']) #print(key_words) return key_words
版本二:
使用官方接口
比如:
https://sp0.baidu.com/5a1Fazu8AA54nxGko9WTAnF6hhy/su?wd=seo&sugmode=2&json=1&p=3&sid=1427_21091_21673_22581&req=2
def get_sug(word): url = 'https://sp0.baidu.com/5a1Fazu8AA54nxGko9WTAnF6hhy/su?wd=%s&sugmode=2&json=1&p=3&sid=1427_21091_21673_22581&req=2&pbs=%%E5%%BF%%AB%%E6%%89%%8B&csor=2&pwd=%%E5%%BF%%AB%%E6%%89%%8B&cb=jQuery11020924966752020363_1498055470768&_=1498055470781' % word r = requests.get(url, verify=False) # 请求API接口,取消了HTTPS验证 cont = r.content # 获取返回的内容 res = cont[41: -2].decode('gbk') # 只取返回结果中json格式一段,并且解码为unicode res_json = json.loads(res) # json格式转换 return res_json['s'] # 返回关键词列表
版本三:
另一个接口地址
def get_word(word): url=f'http://suggestion.baidu.com/su?wd={word}&sugmode=3&json=1' html=requests.get(url).text html=html.replace("window.baidu.sug(",'') html = html.replace(")", '') html = html.replace(";", '') #print(html) html = json.loads(html) key_words=html['s'] #print(key_words) return key_words
本质上二和三都是同一个性质,大家参照着看和用吧!
扩展版本:
这里有个小技巧,就是在关键词后面输入w,会出现跟拼音以w开头的一系列关键词,比如“黄山w”,会出现“黄山温泉”,”黄山玩几天“,“黄山五绝”等关键词(见上截图)。因此,当我们把a~z遍历一遍,会出现更多关键词。
def get_more_word(word): more_word=[] for i in 'abcdefghijklmnopqrstuvwxyz': more_word.extend(get_keywords('%s%s'%(word,i))) print(more_word) print(len(more_word)) print(len(list(set(more_word)))) return list(set(more_word)) #去重操作 def get_more_sug(word): all_words = [] for i in 'abcdefghijklmnopqrstuvwxyz': all_words += get_sug(word+i) # 遍历字母表 | 利用了上一个函数 print(len(list(set(all_words)))) return list(set(all_words)) # 去重操作
这里选用版本二的接口形式,避免被和谐
但是使用requests模块请求一个证书无效的网站的话会直接报错
可以设置verify参数为False解决这个问题
r = requests.get(url, verify=False)
但是设置verify=False会抛出一个InsecureRequestWarning的警告
这样看起来很不好
解决方法:
from requests.packages.urllib3.exceptions import InsecureRequestWarning
# 禁用安全请求警告 requests.packages.urllib3.disable_warnings(InsecureRequestWarning)
运行效果
参考源码获取
关注微信公众号 “二爷记”,回复 “百度下拉框” 即可获取!
如遇文件失效可直接联系反馈!
为了方便各位老哥使用和玩耍,本渣渣特意给各位老哥打包了一下low版exe工具,以便各位大佬哥使用!
exe工具获取
百度网盘
链接:
https://pan.baidu.com/s/1Zqst5fLhBZrIiR3XA14cXQ
提取码:
c7mt
注意事项(介意忽下):
exe打包环境为 win7 64位,其他系统可能存在不兼容问题。
工具免费使用,为防止滥用及盗卖,需授权激活方可使用。
注册激活码可直接联系 本渣渣 微信 获取!
参考资料:百度
百度下拉-百度百科
https://baike.baidu.com/item/%E7%99%BE%E5%BA%A6%E4%B8%8B%E6%8B%89/7139864?fr=aladdin
张亚楠博客-seo技术流
PYTHON批量挖掘百度下拉框关键词
http://www.zhidaow.com/post/get-baidu-suggestions-by-python
Sch01aR#-博客园
Python-requests取消SSL验证的警告InsecureRequestWarning解决办法
https://www.cnblogs.com/sch01ar/p/8432811.html
微信公众号:二爷记
不定时分享python源码及工具
-
抓百度下拉框内容
2021-02-07 15:02:01百度???你要干嘛 朋友总是有很多奇怪的需求,这次他想要百度搜索智能提示的内容,就是这个 至于他要干吗用,这个并没有太多去问,只是一时兴起,决定白嫖百度一下 开门见山的说,白嫖不好,如果大家有能力还是去...百度???你要干嘛
朋友总是有很多奇怪的需求,这次他想要百度搜索智能提示的内容,就是这个
至于他要干吗用,这个并没有太多去问,只是一时兴起,决定白嫖百度一下
开门见山的说,白嫖不好,如果大家有能力还是去购买相应的接口,等我有钱了就买百度云在抓数据😊如何做
朋友给了我一个非常机智的方法
0. 打开电脑,打开浏览器 1. 让程序模拟用户操作,在浏览器的输入框中输入预存的词组 2. 截取当前浏览器的显示截图 3. 程序识别图中内容 4. 将内容保存到本地
至此完成一次操作,后续就是无限循环的抓取动作
我的想法就比较简单粗暴了,因为数据不可能缓存在本地,所以每次输入内容,百度一定会回服务器抓取的,
于是我打开浏览器,控制台监控浏览器的请求,发现了一些频率较高的重复Get请求,打开一看,哎嘿……这是啥整理下思路
众所周知,百度引擎会爬各种网站的数据,所以爬虫对他们来说那是相当的熟悉,所以肯定会限制我们爬取他们
那么首要任务就是要测试这些Get请求是否有限制,最简单的方法直接PostMan测试一下,修改各种参数,头信息,
如果能够正常返回,剩下就是我们如何处理这些数据了扬帆启航
0. 查找接口 1. 首先PostMan测试接口情况 2. 整理数据 3. 编写脚本 4. 运行测试 5. 简单压测
- 结果五根线程110词在2秒完成 ……666
- 最后附赠GO语言测试代码地址
- csdn:https://download.csdn.net/download/at555444/15118651
-
百度长尾关键词挖掘工具,百度下拉框采集器加强版
2019-04-26 18:24:47我们都知道百度下拉框的关键词对于SEO来说有着至关重要的作用,但是由于百度加密算法,因此很难采集到,网上很多相关的技术都是代码实现,这个工具封装了代码,可以直接在电脑上运行挖掘,简单好用。 -
百度下拉框|百度下拉联想词|百度搜索框优化|百度下拉
2022-03-04 11:47:34百度下拉框排名怎么做,百度下拉排名优化技术 原创2022-02-24 11:36·推神网 百度下拉框的上词规则,关键字每天搜索多少,以及搜索相关字词的次数。这些数据记录在百度中。当百度搜索一个简短的关键词时,下拉框...百度下拉框排名怎么做,百度下拉排名优化技术
原创2022-02-24 11:36·推神网
百度下拉框的上词规则,关键字每天搜索多少,以及搜索相关字词的次数。这些数据记录在百度中。当百度搜索一个简短的关键词时,下拉框可能会有一些与它相关的长尾词,例如:当你输入B时,下拉框中会出现很多相关的词。订单是baidu, bt ..等。从该结果可以看出,在最近的时期中,“百度”的搜索次数大于“bt”,而搜索“bt”的次数大于其下面的字,依此类推。在一定时期内搜索量越大,下拉框中的排名越高。当然,它也结合了其他判断方法,但这绝对是最重要的方法。正因为如此,才会出现拉下拉框的软件。
常见刷百度下拉框原理及操作流程如下:
1.相关性
百度搜索结果下拉推荐—定要相关性,只有相关性高才会对用户起到提醒作用。
2点击率
百度搜索结果是根据用户的点击率来推荐给用户的,这个不用说。
3.ip地址
不同用户上网采用的ip地址不—样,因此ip地址—定会是不同。
4.差异化
搜索关键词差异化,只有差异化的关键词才会对用户起到提醒作用。
总结:因此要想刷关键词必须从上面几点出发来刷关键词下来。刷下拉框软件原理:通过将注册为其用户的所有计算机分组组成一个巨大的点击团队,当一个用户A通过软件设置关键字时,如果他想刷关键字“网站建设”,那么可能设置“xx网站建设,网站建设x,也可以写入网址”等中的一些关键词,用什么词来表达你的想法,然后打电话给其他用户B,C,D,E,F....算机控制搜索中的程序对于由A设置的关键字和相关关键字。当这些单词的搜索次数每天达到一定数量时,经过一段时间后,百度下拉框可能会达到预期的效果。
文章标题:百度下拉的上词原理,百度下拉框怎么做? -
抓百度下拉框内容-续篇
2021-02-09 12:29:05百度???你又要干嘛 朋友总是有很多奇怪的需求,由于之前给他的抓取方式并不是他心仪的方式,所以这他说如果很难的话就先不要弄了 作为一名身经百战的程序员,这无疑是赤果果的挑衅,那么咱们这次还是抓这个 那么... -
百度下拉框教学能否成为一种营销方式
2020-01-29 20:11:48百度下拉框教学能否成为一种营销方式 近期有商友问小编一个比较有意思的问题,今天与小伙伴们一起分享一下,这个问题就是百度下拉框与相关搜索能否成为主流营销方式,能否通过百度下拉框教学提升企业知名度,对于... -
百度下拉框对比百度竞价的优势
2021-12-29 16:01:49百度下拉框对比百度竞价的优势 -
vue实现百度下拉框
2018-08-14 15:18:00<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <...百度下拉框</title> <meta name="viewport" content="width=device-width, initial-scale=1.0, ... -
刷百度下拉框.永久免费 无广告
2014-11-07 18:46:12刷百度下拉框.永久免费 无广告 永久免费版本 软件是用易语言写的 可能会报毒 放心 绝对绿色 -
采集百度推荐词、百度下拉框
2018-05-08 15:21:07<?php$word=$_GET['word'];if ($word==""){echo <<<EOF<form action="" method="get"> <p>关键词?.../p&a -
PHP采集百度下拉框数据的脚本程序源码
2021-04-29 02:13:34代码如下[toggle title=”My Toggle”]$word=$_GET[‘word’];if ($word==””){echo <<关键词: 站群” />EOF;}else{$data=file_get_contents(...$data=mb_convert_encoding($dat... -
dedecms首页搜索 添加仿百度下拉框
2019-09-23 23:19:251:找到uploads/templets/default/head.htm 2:找到 <inputname="q"type="text"class="search-keyword"id="aa"value="在这里搜索..."onfocus="if(this.value=='在这里搜索...'){this.value='';}" onkeydown... -
ajax实现百度下拉框
2018-02-02 14:10:37-- 使用ajax技术实现下拉框提示效果 --> //定义计数器 var count=-1; //创建变量记录setTimeout的id值 var id; function getData(event){ //获取evet对象来获取用户下压的键盘值 var eve=... -
PYTHON批量挖掘百度下拉框关键词
2018-03-07 15:19:04百度下拉框的关键词,一直是SEO关键词拓展的利器,只要在搜索框中输入一个关键词,就可以得到一批相关词。我有个小技巧,可瞬间提升上百倍的挖掘效率。并且通过Python实现后,完全可用于大规模关键词的批量挖掘。... -
PYTHON批量挖掘百度下拉框关键词–转{张亚楠}
2017-06-26 18:04:32百度下拉框的关键词,一直是SEO关键词拓展的利器,只要在搜索框中输入一个关键词,就可以得到一批相关词。我有个小技巧,可瞬间提升上百倍的挖掘效率。并且通过Python实现后,完全可用于大规模关键词的批量挖掘。... -
Vue.js模拟百度下拉框
2018-10-04 22:14:00Vue.js模拟百度下拉框 1 <!DOCTYPE html> 2 <html lang="en"> 3 <head> 4 <meta charset="UTF-8"> 5 <title></title> 6 <sty... -
vue+百度下拉框
2017-05-16 09:19:40<!DOCTYPE html> <html lang="en"><head> <title>Document .gray { background-color: gray; } #box ul li { curso -
百度搜索下拉框实现技术原理分析
2021-06-10 13:19:22来自百度站长平台的站长回答:对于词的研究,想必每个seoer都知道,而除了比较热门的百度相关搜索词之外,百度下拉框关键词应该也是不少人研究的范围,不过大部分人都是针对下拉框词的刷量,毕竟百度下拉框关键词... -
【亲测好用!】shell批量采集百度下拉框关键词
2015-10-17 11:10:00】shell批量采集百度下拉框关键词 SEO工具方法11个月前 (11-18)2153浏览3条评论百度已收录 一直想写一篇用shell采集百度下拉框关键词的教程,个人感觉用shell来采集的话速度和效率都会更高一点。因为前面写过一篇... -
实现类似百度下拉框自动匹配功能
2013-01-25 13:27:00实例下载1 实例下载2 -
类似百度搜索下拉框
2021-11-18 10:16:51var fouce_li_num = -1;///默认没有选择任何下拉内容 var width_ = 326;//这里设置的是搜索框的宽度,目的为了与下面的列表宽度相同 var li_color = “#fff”;//默认的下拉背景颜色 var li_color_ = “#CCC”;... -
百度搜索下拉框,下拉菜单怎么做?如何刷?
2020-11-17 22:43:46搜索下拉框存在的下拉词,每天的点击浏览量都很高,这意味着很多企业都在抢这个位置,在网民搜索自己的行业主关键词时,下拉中的词条是行业关键词和自己品牌词或其他营销类词的整体呈现。 搜索下拉框菜单怎么做?如何... -
致新手:百度下拉框暗藏的SEO秘诀
2016-04-15 14:23:25甚至更有人宣传“SEO之路已死”,其实不然,随着百度算法的调整,搜索引擎的宗旨就越来越明显,“客户体验度”自然被很多站长摆在桌面,那么,今天博主就来和大家分享一下百度下拉框的seo技巧。 百度下拉框... -
百度下拉框互刷工具
2012-05-26 11:04:05百度下拉框互刷工具百度下拉框互刷工具百度下拉框互刷工具百度下拉框互刷工具 -
使用Ajax实现百度下拉框
2019-12-27 21:51:34百度下拉框 在使用百度搜索时,在输入框中输入部分文字后,下面会将与该文字相关的词组展示出来,该功能就可以使用ajax来实现。 注册输入框的onkeyup事件,该事件触发时,将输入框中填写的内容使用ajax发送到... -
jsonp实现百度下拉框功能的方法分析
2020-10-17 01:00:58主要介绍了jsonp实现百度下拉框功能的方法,结合实例形式分析了调用百度接口jsonp实现跨域请求及内容渲染相关操作技巧,需要的朋友可以参考下 -
刷百度下拉框的优势:
2012-03-22 18:52:33刷百度下拉框的优势: 1)展示效果最直观,最抢眼,最具价值的广告位置 2)迅速提升品牌形象和知名度,企业实力的体现 3)搜索引擎推荐结果,更具说服力,增强客户信任感 4)让客户直达你的网站,直接 跳过竞价... -
揭秘刷百度下拉框与相关搜索的原理.pdf
2022-05-26 08:42:35揭秘刷百度下拉框与相关搜索的原理.pdf揭秘刷百度下拉框与相关搜索的原理.pdf揭秘刷百度下拉框与相关搜索的原理.pdf揭秘刷百度下拉框与相关搜索的原理.pdf揭秘刷百度下拉框与相关搜索的原理.pdf揭秘刷百度下拉框与...