List of JSON search engine APIs without quotas, like Bing? [closed]

血红的双手。 提交于 2019-12-02 20:18:23

Usually services and APIs have usage threshold, so as to enable experimentation and small-scale use without any hurdles and up-front obstacles, but open up possibility of offering better SLA and additional options with paid usage for apps that need that level of support.

That said looking on programmableweb.com for search APIs is probably an interesting option - see http://www.programmableweb.com/apis/directory/1?apicat=Search.

I am also curious, what you're specifically looking for in terms of capabilities, what you'd like to see in the Bing API etc. Any feedback and I can relay to the team (since I am on the Bing team).

i think http://www.faroo.com/ may help you out. It have limit of 1million searches per month limitation.

I have the same problem with bing, so i'm trying an another solution. I'm trying to parse their HTML content like a human. Their website's HTML had some limitations, so i scraped their mobile version.

If any, that's the code i used(using Jsoup and apache http components) in java:

    DefaultHttpClient client = new DefaultHttpClient();
    client.getParams().setParameter(CoreProtocolPNames.USER_AGENT, "Mozilla/5.0 (Windows NT 6.2; rv:9.0.1) Gecko/20100101 Firefox/9.0.1");
    client.getParams().setParameter(ClientPNames.COOKIE_POLICY, CookiePolicy.IGNORE_COOKIES);

    int page = 0;
    String surl = "http://m.bing.com/search/search.aspx?A=webresults&Q=" + URLEncoder.encode("site:www.facebook.com/ +\"?sk=info\"+\"new york\"+\"Bar\"", "UTF-8") + "&D=Web&SI=" + (page * 10) + "&PN=" + (page);
    HttpGet get = new HttpGet(surl);
    InputStream content = client.execute(get).getEntity().getContent();
    Document doc = Jsoup.parse(content, "UTF-8", "http://www.bing.com/");
    Elements elements = doc.select(".s15 a");
    for (Element e : elements) {
        String url = e.attr("href");
        int v = url.indexOf("REDIRURL=");
        if (v > 0) {
            url = url.substring(v + 9);
            url = url.substring(0, url.indexOf("&"));
            url = URLDecoder.decode(url, "UTF-8");
        } else {
            break;
        }
        System.out.println(url + " : " + e.text());
    }
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!