Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/357.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Google Web搜索API为不同搜索中的相同查询字符串返回随机结果_Java_Json_Gson_Google Search Api - Fatal编程技术网

Java Google Web搜索API为不同搜索中的相同查询字符串返回随机结果

Java Google Web搜索API为不同搜索中的相同查询字符串返回随机结果,java,json,gson,google-search-api,Java,Json,Gson,Google Search Api,大家好,我正在从事的项目中,我使用谷歌网络搜索API进行网络搜索。它以随机方式工作,在不同的搜索中为同一查询字符串生成不同的结果集。问题是什么。 请尽快回复。我只是从特定的网站过滤结果的建议。 这是我的WebSearch代码。 " 公共映射getSearchArray(字符串搜索\u键)引发异常 { Reader=null; GoogleResults=null; URL=null; int指数=0; int result_size=0; 映射搜索结果映射=新HashMap(); 试一试{ lo

大家好,我正在从事的项目中,我使用谷歌网络搜索API进行网络搜索。它以随机方式工作,在不同的搜索中为同一查询字符串生成不同的结果集。问题是什么。 请尽快回复。我只是从特定的网站过滤结果的建议。 这是我的WebSearch代码。 "

公共映射getSearchArray(字符串搜索\u键)引发异常
{
Reader=null;
GoogleResults=null;
URL=null;
int指数=0;
int result_size=0;
映射搜索结果映射=新HashMap();
试一试{
logger.info(“内部GetSearch”);
对于(int i=0;i<20;i=i+4){
字符串google=”http://ajax.googleapis.com/ajax/services/search/web?v=1.0&start=“+i+”&q=“;
字符串charset=“UTF-8”;
url=新url(google+URLEncoder.encode(搜索键,字符集));
reader=新的InputStreamReader(url.openStream(),字符集);
results=new Gson().fromJson(reader,GoogleResults.class);
//info(“resultSize:+results.getResponseData().getResults().size());
//系统输出打印项次(“总计”+t);
if(results.getResponseData().getResults().size()!=0){
结果_size=results.getResponseData().getResults().size();
}否则{
结果_大小=1;
}
对于(int m=0;m
public Map getSearchArray(String search_key) throws Exception
{
        Reader reader = null;
        GoogleResults results = null;
        URL url = null;
        int index=0;
        int result_size=0;
        Map search_result_map = new HashMap();

        try {
            logger.info("Inside GetSearch");
            for (int i = 0; i < 20 ; i=i+4) {
                String google = "http://ajax.googleapis.com/ajax/services/search/web?v=1.0&start="+i+"&q=";
                String charset = "UTF-8";
                url = new URL(google + URLEncoder.encode(search_key, charset));
                reader = new InputStreamReader(url.openStream(), charset);
                results = new Gson().fromJson(reader, GoogleResults.class);
                //logger.info("resultSize: "+results.getResponseData().getResults().size());
                //System.out.println("total"+t);
                if (results.getResponseData().getResults().size()!=0) {
                    result_size = results.getResponseData().getResults().size();
                } else {
                    result_size = 1;
                }

                for (int m = 0; m <result_size; m++)
                {
                    String a=results.getResponseData().getResults().get(m).getUrl();
                    System.out.println(a);
                    if(a.matches(".*food.Some-Website.*")
                                ||a.matches(".*Some-Website.*")
                                ||a.matches(".*Some-Website.*")
                                ||a.matches(".*Some-Website.*")
                    {
                        logger.info("----I----"+i+"----M----"+m);
                        String title = results.getResponseData().getResults().get(m).getTitle().replaceAll("\\<[^>]*>","");
                        String url_link = results.getResponseData().getResults().get(m).getUrl();
                        String embeded_link = createEmbeddedLink(url_link, title, "http");
                        search_result_map.put("link_"+index, embeded_link);
                        search_result_map.put("title_"+index, title);
                        index++;
                        logger.info("Title "+title);
                    }
                    else
                    {
                        System.out.println("No Url");
                    }
                    }
                }
            } catch (Exception e)
            {
                logger.info("Exception Thrown");
            }
        finally {
            return search_result_map;
        }
    }