Moteur de recherche convivial pour les programmeurs? [fermé]


123

Google n'est pas favorable à la recherche de chaînes textuelles avec des caractères tels que $ et #. Existe-t-il un moteur de recherche prenant en charge la recherche de chaînes verbatim?

Je suis au courant de cette question qui a été posée il y a quelque temps, mais je n'ai pas obtenu de bonnes réponses. Je suis prêt à mettre une prime si je ne parviens toujours pas à obtenir une réponse. Bien sûr, il est tout à fait possible qu'il n'y en ait pas, mais je veux être sûr :)

EDIT: Les citations ne fonctionnent pas . Google supprime les symboles même lorsqu'ils sont cités.

Exemple de requête: make "$ <", pour la variable $ <dans makefiles.


6
Je souhaite effectuer des recherches sur Internet comme lorsque j'utilise Google, principalement pour la documentation. Je ne recherche pas de code.
static_rtti

5
Je recherche des extraits de code dans la documentation. Les moteurs de recherche de code ne fonctionnent pas pour moi, car ils renvoient beaucoup de code source non pertinent sans documentation, ce qui est inutile pour moi.
static_rtti

4
Plus précisément, dans le cas de "make $ <", le cas d'utilisation est le suivant: je tombe sur $ <dans un makefile, et je veux savoir ce qu'il fait. Je ne sais pas comment ça s'appelle, donc je ne peux pas utiliser google pour ça. Si vous pouvez me donner une bonne solution à ce problème spécifique, la prime est pour vous .
static_rtti

1
Si vous n'avez pas posé cette question auparavant, vous n'êtes pas programmeur.
L̲̳o̲̳̳n̲̳̳g̲̳̳p̲̳o̲̳̳k̲̳̳e̲̳̳

3
recherche de code! = recherche sur Internet
L̲̳o̲̳̳n̲̳̳g̲̳̳p̲̳o̲̳̳k̲̳̳e̲̳̳

Réponses:


77

Essayez http://www.symbolhound.com .

Cela semble résoudre votre problème. SymbolHound est un moteur de recherche qui n'ignore pas les symboles ou les caractères spéciaux dans les requêtes Web comme le fait Google. Ce n'est pas non plus une recherche de code source. J'espère que cela pourra aider!


6
On dirait que ça ne marche plus ...
Dmitry Trofimov

3
"ne fonctionne pas" comme dans affiche une page de résultats vide
serv-inc

2
Dans le cas où symbolhound est en panne, essayez stackse . Je suis l'auteur et c'est un travail en cours, mais il est désormais utilisable.
ren

4

Je ne peux pas vous aider, mais peut au moins vous fournir une vision (peut-être que la même startup ira la réaliser).

Assieme est le prototype de recherche d'un moteur de recherche dédié à la documentation logicielle. L'idée est que la recherche de documentation logicielle est une tâche spécialisée, qui nécessite des moteurs de recherche spécialisés. Par exemple, lors de la recherche de documentation APi, le moteur doit également extraire des exemples valides, par exemple, des articles de blog et nous les montrer. Etc.

Pour consulter l'intégralité de l'article, reportez-vous à: "Assieme, Finding and Leveraging Implicit References in a Web Search Interface for Programmers"

PS: Si vous êtes intéressé par les dernières recherches sur la recherche de logiciels, vous pouvez jeter un œil à la série d' ateliers SUITE . Nous sommes également sur Twitter :)


Hmm, Assieme a l'air intéressant, mais ce n'était évidemment que pour Java, et ne semble pas être disponible sous aucune forme ...
SamB

2

Avez-vous essayé Yahoo BOSS ? C'est une API de recherche qui est actuellement gratuite (nécessite une inscription), à travers laquelle vous pouvez utiliser la recherche Web de Yahoo. Si vous échappez tous les caractères pertinents comme décrit dans la FAQ , vous pouvez rechercher des chaînes verbatim arbitraires.


1
La page vers laquelle vous créez un lien ne dit rien de tel. Il donne simplement une liste de caractères qui doivent être échappés lorsqu'ils sont utilisés dans une URL dans les valeurs d'argument BOSS.
mercator


0

Ce n'est probablement pas exactement la réponse que vous recherchez, mais je suis vraiment sensible à ce problème et à l'étrange distance que cette question semble rencontrer.

Dans ce cas, vous avez déjà des informations sur ce que vous recherchez. Vous recherchez une partie spécifique d'une page de documentation pour créer des fichiers.

voici la documentation des makefiles http://www.gnu.org/software/make/manual/make.html

De manière pratique, toute la documentation se trouve sur une seule page html géante. Dans Firefox, appuyez sur control+f(commande + f sur macs) pour faire apparaître la recherche dans le widget de page. Dans le champ de recherche de Firefox, saisissez le symbole que vous recherchez. Il rapporte 37 correspondances, que vous pouvez parcourir individuellement.

Parfois cependant, la séquence de symboles est idiomatique et ne figure pas dans la documentation d'une langue. Comment un étranger saurait-il, par exemple, qu'un $ en javascript fait généralement référence à jquery, à un prototype ou à une autre bibliothèque incluse?

Dans ce cas, il y a probablement une question sur le débordement de pile quelque part qui expliquerait cela. Cependant, la recherche de stackoverflow pour un symbole $ ne fonctionne pas. Vous pouvez simplement poser la question, vous aurez probablement une réponse. (comme vous l'avez fait dans ce cas).

Je pense que nous devrions peut-être faire une demande de fonctionnalité stackoverflow? Ce n'est pas une recherche générale sur le Web, mais stackoverflow est idéalement positionné pour répondre à des problèmes comme celui-ci d'une manière que le Web en général ne l'est pas.

edit: après avoir regardé autour de meta.stackoverflow.com, j'ai trouvé une demande pour cela existe déjà: /meta/19870/we-need-to-be-able-to-search-for- symboles de ponctuation

Il semblerait que si vous appuyez sur "poser une question" et écrivez

What does the symbol [symbol] in [language] mean?

dans le titre, puis déplacez votre curseur sur le corps, SO vous suggérera un tas de questions qui ont déjà été posées, qui sont de bien meilleurs résultats que d'utiliser "recherche". Vous y trouverez probablement la réponse à toute requête relative aux symboles. Et si vous ne le faites pas, posez votre question. Je suis sûr qu'il y a environ 10 nerds trop pressés qui seront impatients de vous dire que la question a déjà été posée et de vous indiquer où se trouvent les questions en double, et seulement au prix de quelques votes négatifs potentiels!

Cependant, Stack Overflow devrait vraiment ajouter cette fonctionnalité. C'est ridicule que ce ne soit pas le cas. Les questions en double représentent simplement le coût que Stackoverflow devra accepter pour ne pas avoir cette fonctionnalité.


0

Le plus proche que j'ai jamais trouvé est Cuil, qui avec vos critères est aussi proche que de trouver des correspondances exactes pour "make $". Malheureusement, ils sont destinés aux sites pour devenir riche rapidement. Mais c'est mieux que Google avec des termes comme C # et C ++.


0

La réponse, bien sûr, est Google :-) En particulier, Google Code Search . Voir par exemple les requêtes pour vos requêtes: ( edit: correction des liens)

>>> http://www.google.com/codesearch?q= >>>

$ http://www.google.com/codesearch?q=\$

# http://www.google.com/codesearch?q=\#

EDIT: Ok, de votre dernier commentaire à la question, je vois votre point maintenant. Cela serait utile à beaucoup (pour moi, juste les très rares fois dans ma vie où j'en aurais besoin). Mais, pour autant que je sache, il n'y a aucun moyen de le faire. Si vous recherchez sur les forums la recherche de symboles, vous trouverez de nombreuses plaintes comme celle-ci .

La chose la plus proche que j'ai trouvée est celle-ci, qui est assez heureuse de rechercher des symboles (mais uniquement dans cette communauté relativement petite, ce qui n'est pas ce que vous recherchez): http://perlmonks.org/

Pourquoi ne pas écrire un tel moteur de recherche de programmeur ??


10
Je souhaite effectuer des recherches sur Internet comme lorsque j'utilise Google, principalement pour la documentation. Je ne recherche pas de code.
static_rtti

1
On pourrait peut-être écrire un tel moteur de recherche. Ensuite, nous devrons indexer Internet, ce qui est un problème plus grave. Je ne pense pas que beaucoup d'entre nous seront en mesure de se permettre des centres de données de taille Google avec une bande passante de niveau Google, et c'est ce dont nous aurions besoin pour commencer.
David Thornley

5
Nous n'avons certainement pas besoin de leur bande passante, ni de leur puissance de traitement ni de leur vitesse. Les programmeurs ne représentent qu'une infime partie des internautes, et pour un tel service, ils pourraient attendre plus de secondes qu'avec une recherche Google courante. Le stockage peut sûrement être un problème, mais encore une fois, si nous trouvons un moyen intelligent d'indexer uniquement les pages "liées à la programmation", alors nous sommes prêts: je crois qu'un petit cluster peut le gérer assez facilement! Maintenant, développer le bon algorithme et le bon système de classement, cela pourrait être difficile.
Davide

1
Cette réponse a-t-elle été acceptée automatiquement en raison de la prime? (Pouvez-vous le
désaccepter

32
Ce service n'est plus disponible. La recherche de code Google a été fermée le 15 janvier 2012 dans le cadre de son "balayage d'automne".
animuson

0

Voici ce que j'utilise:

www.koders.com - Il indexe plusieurs projets open source, donc, si je veux savoir comment quelque chose est fait, il suffit de trouver sur le code source ce dont j'ai besoin. Et ça marche vraiment bien.


1
Ne répond pas à ma question, veuillez lire attentivement la question et les commentaires avant de répondre.
static_rtti

En fait, j'ai répondu à votre question :) Vous avez demandé un moteur de recherche qui pourrait prendre en charge des requêtes comme <$ et ainsi de suite. Et celui que je vous ai montré fait exactement cela! :) En fait, et plus encore, car comme il s'agit d'un moteur de recherche axé sur les développeurs, tout le contenu que vous obtiendrez est exactement du code. Le code dont vous avez besoin + les commentaires y relatifs. Peut être que vous devriez l'essayer.
Kico Lobo

Je l'ai essayé, j'en savais beaucoup avant en fait, mais cela ne répond pas à ma question (lisez les commentaires de clarification pour comprendre pourquoi).
static_rtti

-1

Les moteurs de recherche open source ont des indexeurs beaucoup plus flexibles que quiconque. Si quelqu'un d'autre n'a pas écrit de tokenizer qui autorise les symboles, il est facile d'écrire le vôtre. Je regarderais Solr / Lucene, Xapian, Sphinx et Ferret.

De plus, pas de limite de 64 résultats pour l'API Google AJAX!


3
Il ne demande pas un indexeur qu'il peut gérer lui
reinierpost

1
Il ne demande pas non plus un indexeur qu'il peut gérer lui-même. Les solutions alternatives sont toujours des solutions.
Justin Johnson du

-3

OK, alors laissez-moi coller mon 2c et voir si je peux clarifier cela. Vous avez, éventuellement, trois recherches à faire:

  1. Qu'est-ce que "$ <"?
  2. Comment rechercher des chaînes littérales telles que $ foo ou <<<?
  3. Si je ne connais pas le nom de quelque chose et que mon moteur de recherche ne me laisse pas rechercher des chaînes littérales, comment puis-je le rechercher?

Le premier cas est simple, c'est le nom du premier prérequis dont un processus de création a besoin pour la cible en cours de construction. Voir http://www.gnu.org/software/make/manual/make.html#Automatic-Variables par exemple.

Le deuxième cas est assez difficile. Google affirme qu'à de très rares exceptions près, la ponctuation est ignorée (voir http://www.google.com/support/websearch/bin/answer.py?answer=134479 ). Donc, cela exclut beaucoup de petites choses atom-y que vous avez dans le code comme "++" et "<<". Bien sûr, Google doit appliquer certaines intelligences à cela, par exemple, ils permettent de rechercher "C ++" comme une unité à part entière. Mais peut-être que le monde serait meilleur si le C ++ disparaissait simplement d'Internet :)

Le troisième cas se situe quelque part entre la bibliothéconomie et la philosophie. Wittgenstein aurait sans aucun doute quelque chose de concis à dire comme "nous ne pouvons pas rechercher ce dont nous ne pouvons pas parler", mais pragmatiquement, vous n'avez pas d'autre choix que de penser à des termes alternatifs qui pourraient décrire votre élément. Par exemple, "atome", "variable", "opérateur" et autres.

J'espère que cela pourra aider!

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.