首页>代码>bootstrap+autocomplete高仿百度搜索下拉提示框实现自动完成搜索结果源代码下载>/autocomplete/src/com/joke/util/BaiduService.java
package com.joke.util; import java.io.*; import java.net.*; import java.util.ArrayList; import java.util.List; import java.util.regex.Matcher; import java.util.regex.Pattern; import org.apache.commons.httpclient.DefaultHttpMethodRetryHandler; import org.apache.commons.httpclient.HttpClient; import org.apache.commons.httpclient.HttpException; import org.apache.commons.httpclient.HttpStatus; import org.apache.commons.httpclient.methods.GetMethod; import org.apache.commons.httpclient.params.HttpMethodParams; import net.sf.json.JSONArray; import net.sf.json.JSONException; import net.sf.json.JSONObject; import com.joke.vo.AutoVo; /** * 百度接口提供的热词 * * @author yangzhongying mail:j@seejoke.com * @date 2014-8-13 下午01:13:05 * @package com.joke.util */ public class BaiduService { private static JSONObject jsonData; private static JSONArray info; /** * 获取10个关键字匹配 * * @param keyword * @param limit * @return * @throws HttpException * @throws IOException * @throws JSONException */ public static List<AutoVo> getSuggestionList(String keyword) throws HttpException, IOException, JSONException { List<AutoVo> list = new ArrayList<AutoVo>(); HttpClient httpClient = new HttpClient(); GetMethod getMethod = new GetMethod( "http://suggestion.baidu.com/su?wd=" + URLEncoder.encode(keyword, "utf-8") + "&p=3&cb=window.bdsug.sug&t=1302750139281"); // Execute the method httpClient.executeMethod(getMethod); getMethod.getParams().setParameter(HttpMethodParams.RETRY_HANDLER, new DefaultHttpMethodRetryHandler()); // If failed, return empty list int statusCode = httpClient.executeMethod(getMethod); if (statusCode != HttpStatus.SC_OK) { return list; } // Get the response body byte[] responseBody = getMethod.getResponseBody(); String response = new String(responseBody, "gbk"); // Pick the json part Pattern pattern = Pattern.compile("\\{.*\\}"); Matcher matcher = pattern.matcher(response); if (matcher.find()) { String jsonStr = matcher.group(); if (jsonStr != null && !"".equals(jsonStr)) { jsonData = JSONObject.fromObject(jsonStr); info = jsonData.getJSONArray("s"); AutoVo bo = null; for (int i = 0; i < info.size(); i++) { bo = new AutoVo(); String hotword = (String) info.get(i); if (hotword != null && !"".equals(hotword)) { bo.setId(i); bo.setKeyword(hotword); list.add(bo); } } } } return list; } }
最近下载更多
mengfanyun LV9
2021年6月22日
fengshaoye LV10
2021年2月24日
linier LV11
2019年8月1日
东东大牛 LV2
2019年3月30日
ylife87 LV12
2018年8月6日
wyzl3321 LV25
2018年7月17日
重量级 LV1
2018年3月27日
wangli745235136 LV3
2018年1月13日
你的小可爱 LV13
2017年12月7日
yyy123 LV1
2017年10月30日
最近浏览更多
shuangfu LV25
2023年12月1日
fxlmop LV1
2023年9月4日
luoqianggggg LV1
2023年5月26日
adminadminsqwqe LV8
2023年5月11日
312468457 LV1
2023年1月15日
3473084268 LV9
2022年12月12日
zhanghaiboeee LV3
2022年11月27日
微信网友_6040315240812544 LV8
2022年10月20日
四小只by白丫头 LV3
2022年5月10日
TanXing13 LV9
2021年12月22日