2010-01-26 5 views
3

J'ai entre 20000 et 500000 entrées dans un fichier Excel. Une colonne contient le nom de cette société. Idéalement, je voudrais rechercher le nom de cette entreprise, et quel que soit le premier résultat, je choisirais l'URL associée. Je suis conscient que Google (qui est mon choix idéal) fournit une API de recherche AJAX. Cependant, il a également une limite de recherche de 1000 par personne inscrite. Existe-t-il un moyen d'obtenir plus de 20000 recherches sans créer 20 comptes avec Google, ou existe-t-il un moteur alternatif que je pourrais utiliser?API de recherche Web pour les entrées 25000-50000

D'autres manières d'aborder ce problème sont également les bienvenues (c'est-à-dire les consultations de WhoIs).

+0

Je voulais juste le signaler, au cas où vous ne le sauriez pas: les API de recherche AJAX sont le seul moyen légal d'accéder directement à l'index de recherche de Google. (Voir http://markmail.org/message/gcluw5ayuocvxfv5) – David

+0

J'ai regardé la FAQ et les Conditions d'utilisation pour obtenir des informations sur plusieurs comptes. Plusieurs comptes ne semblent pas interdits. Cependant, la ToU dit que vous ne pouvez pas masquer ou masquer l'identité de votre service, donc si vous avez plusieurs comptes, il leur sera probablement facile de comprendre cela - au cas où ils auraient à sévir contre cela. – David

Répondre

3

Google AJAX Search n'a pas une telle limite de 1000. Yahoo Search fait. Google AJAX Search vous limite à obtenir 64 résultats par recherche, mais n'a pas de limite.

De Google AJAX Search API - Class Reference:

Note: Le nombre maximal de résultats pages est basé sur le type de chercheur. Recherche locale prend en charge 4 pages (ou un maximum de 32 total résultats) et les autres chercheurs (Blog, Livre, Image, Nouvelles, Brevet, Vidéo, et Web) support 8 pages (pour un maximum total 64 résultats).

+0

Ah, je dois être plus complet! Je regardais la FAQ de l'API de recherche SOAP, pas celle d'AJAX. Désolé pour ça. – Brian

1

approches qui évitent d'utiliser un service de recherche externe ...

Approche 1 - mettre le contenu de l'information du XML dans une base de données et la recherche en utilisant SQL/JDBC. Variations du même en utilisant Hibernate, etc.

Approche 2 - lire le fichier XML en tant que structure de données en mémoire en tant que collection Java, et effectuer la recherche par programmation. Cela utilisera un peu de mémoire en fonction de la quantité d'informations contenues dans le fichier XML, mais il vous suffit de déterminer comment analyser/charger le fichier XML et accéder à la collection. Toutefois, il serait utile que vous expliquiez le contexte dans lequel vous essayez de le faire. Est-ce un plugin de navigateur? Le côté client d'une application Web? Le côté serveur? Une application de bureau?

+0

Eh bien, je préférerais le faire comme une seule fois comme une application de bureau en Java. Je pourrais l'exécuter comme un script PHP sur un serveur, mais je ne veux pas bloquer ce site ou quoi que ce soit pendant qu'il fonctionne (ce qui prendra un certain temps). – Brian

Questions connexes