2011-11-10 32 views
22

Bazı özel arama sonuçlarını görüntülemek istiyorum.Bing gibi kotaları olmayan JSON arama motoru API'larının listesi nedir?

Hem Google'ın hem de Microsoft'un (Bing) JSON API'larına baktım. Maalesef, Google’ın günlük sorgulama miktarı sınırlıdır (maksimum on bin sorgu için 50 ABD doları). Ancak, Bing bir gün için "sınırsız" miktarda sorguya ücretsiz olarak izin verir.

Bing's JSON API gibi Google'ın API'sı gibi bir sorgu sınırlaması olmayan başka hizmetler var mı?

İlgili bir soru, Metacrawler gibi hizmetlerin arama sonuçlarını birkaç arama motorundan nasıl birleştirebileceği olabilirken, bu motorların hizmetlerinin koşulları, bu sonuçların yalnızca bu tür (ücretli) API yoluyla elde edilebildiğini ve taramayla gerçekleştirilemeyeceğini açıkça belirtebilir .

+0

Merhaba, http://indexden.com'a bir göz atın - tam olarak ihtiyacınız olan şey budur. –

+5

Bing’in arama API'sı artık şu an için şu anda ücretsiz değil: https://datamarket.azure.com/dataset/5BA839F1-12CE-4CCE-BF57-A49D98D29A44 – KFL

cevap

14

Genellikle hizmetler ve API'lar, herhangi bir engel ve ön engel olmaksızın denemeyi ve küçük ölçekli kullanımı mümkün kılmak için kullanım eşiğine sahiptir, ancak daha iyi SLA ve buna ek gereksinim duyan uygulamalar için ücretli kullanım sunan ek seçenekler sunma olasılığını açar destek seviyesi.

Bu, arama API'leri için programlanabilirweb.com'a bakmanın muhtemelen ilginç bir seçenek olduğunu söyledi - bkz. http://www.programmableweb.com/apis/directory/1?apicat=Search.

Ayrıca özellikle yetenekler açısından baktığınız şey, Bing API'da görmek istediğiniz şeyleri merak ediyorum. Herhangi bir geri bildirim ve takıma geçiş yapabilirim (Bing'de olduğumdan beri takım).

+1

NikhilK, cevabınız için teşekkürler. Bing API'yi kullanmakla uğraştığım en büyük sorun, sonuçların normal arama arama sitesi tarafından döndürülenlerden daha az alakalı görünmesidir. Örneğin, "nu.nl papandreou" için arama yaparsam, site nu.nl'deki papandreu ile ilgili birçok sonuç döndürmesini beklerim. Bunun yerine, nu.nl ile bağlantı kuracak ve Papandreou hakkında başka birinin konuşulduğu nadiren ziyaret edilen yatırımcıların sitesine gidiyorum. – Tom

+1

Anlaşmalı. API sonuçları, web sonuçlarına kıyasla korkunç. Sonuçların farklı olması için bir sebep yok. Ayrıca, kullanım şartlarının bazıları biraz kısıtlayıcıdır. –

2

Bing ile aynı sorunu yaşıyorum, bu yüzden başka bir çözüm deniyorum. HTML içeriğini bir insan gibi ayrıştırmaya çalışıyorum. Web sitelerinin HTML'lerinde bazı sınırlamalar vardı, bu yüzden mobil sürümlerini not ettim.

Varsa, o java (Jsoup ve apache http bileşenlerini kullanarak) i kullanılan kod:

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()); 
    } 
+2

Microsoft'un aynı IP adresinin belirli bir zaman aralığında çok yüksek sayıda arama işi gerektirip gerektirmediğini algıladığını biliyor musunuz? Örneğin, Google bir captcha kodu gönderir ve yayınlar. – PAX

5

i http://www.faroo.com/ size yardımcı olabilir düşünüyorum. Aylık sınırlama başına 1 milyon arama sınırı var.

+2

_FAROO_ iyi görünüyor ancak sonuçların üzerinde çok fazla kontrole sahip değil, sadece [desteklenen operatör] (http://www.faroo.com/hp/api/api.html#parameter) sorguları için soruluyor 'AND' (anahtar kelimeler). – Alastair

+0

Bazıları için bir anlaşma kırıcı olabilir, ancak Faroo da bir API anahtarı için kayıt gerektirir. – lsh

+3

Faroo için başka bir anlaşma kesici, API anahtarınızın kayıt sırasında belirttiğiniz IP adresiyle sınırlı olmasıdır. – lsh