Motor de busca amigável para programadores? [fechadas]


123

O Google não é amigável em procurar seqüências textuais com caracteres como $ e #. Existe um mecanismo de pesquisa que suporte a pesquisa de strings textuais?

Estou ciente dessa pergunta que foi feita há um tempo, mas não obtive boas respostas. Estou pronto para dar uma recompensa se ainda não conseguir uma resposta. Claro que é perfeitamente possível que não exista, mas quero ter certeza :)

EDIT: As cotações não funcionam . O Google retira símbolos, mesmo quando citado.

Exemplo de consulta: make "$ <", para a variável $ <nos makefiles.


6
Quero pesquisar na Internet, exatamente como ao usar o Google, principalmente para documentação. Estou não busca código.
static_rtti

5
Estou procurando trechos de código na documentação. Os mecanismos de pesquisa de código não funcionam para mim, porque retornam muitos códigos fonte irrelevantes sem documentação, o que é inútil para mim.
static_rtti

4
Mais especificamente, no caso de "make $ <", o caso de uso é o seguinte: Eu tropeço em $ <em um makefile e quero saber o que ele faz. Não sei como é chamado, então não posso usar o google para isso. Se você pode me dar uma boa solução para esse problema específico, a recompensa é para você .
static_rtti

1
Se você não fez essa pergunta antes, não é um programador.
L̲̳o̲̳̳n̲̳̳g̲̳̳p̲̳o̲̳̳k̲̳̳e̲̳̳

3
code search! = internet search
L --o̲̳n̲̳̳g̲̳̳p̲̳o̲̳̳k̲̳̳e̲̳̳

Respostas:


77

Tente http://www.symbolhound.com .

Isso parece resolver o seu problema. O SymbolHound é um mecanismo de pesquisa que não ignora símbolos ou caracteres especiais em consultas da Web, como o Google. Também não é uma pesquisa de código-fonte. Espero que ajude!


6
Parece que não funciona mais ...
Dmitry Trofimov

3
"não funciona", como mostra a página de resultados vazia
serv-inc

2
Caso o símbolo caia, tente empilhar . Eu sou o autor e é um trabalho em andamento, mas já pode ser usado.
ren

4

Não pode ajudá-lo, mas pode pelo menos fornecer uma visão (talvez a mesma startup inicie isso).

O Assieme é o protótipo de pesquisa de um mecanismo de pesquisa dedicado para documentação de software. A idéia é que pesquisar na documentação do software é uma tarefa especializada, que precisa de mecanismos de pesquisa especializados. Por exemplo, ao pesquisar a documentação da APi, o mecanismo também deve extrair exemplos válidos de, por exemplo, postagens de blog e mostrá-los para nós. Et cetera.

Para o artigo completo, consulte: "Assisir, encontrar e alavancar referências implícitas em uma interface de pesquisa na web para programadores"

PS: Se você tem interesse nas pesquisas mais recentes sobre pesquisa de software, consulte a série de workshops SUITE . Também estamos no twitter :)


Hmm, Assieme parece interessante, mas era evidente apenas para Java, e não parece estar disponível em qualquer forma ...
Samb

2

Você já experimentou o Yahoo BOSS ? É uma API de pesquisa atualmente gratuita (requer inscrição), através da qual você pode usar a pesquisa na web do Yahoo. Se você escapar de todos os caracteres relevantes, conforme descrito nas Perguntas frequentes , poderá procurar por seqüências verbais arbitrárias.


1
Essa página à qual você vincula não diz nada do tipo. Apenas fornece uma lista de caracteres que precisam ser escapados quando usados ​​em uma URL nos valores do argumento BOSS.
Mercator


0

Provavelmente, essa não é exatamente a resposta que você está procurando, mas sou realmente solidário com esse problema e com a estranha indiferença que essa pergunta parece encontrar.

Nesse caso, você já tem algumas informações sobre o que está procurando. Você está procurando por uma parte específica de alguma página de documentação para criar arquivos.

aqui está a documentação para makefiles http://www.gnu.org/software/make/manual/make.html

Convenientemente, toda a documentação está em uma página html gigante. No firefox, pressione control+f(comando + f no macs) para exibir a pesquisa no widget da página. No campo de pesquisa do firefox, digite o símbolo que você está procurando. Ele relata 37 correspondências, as quais você pode procurar individualmente.

Às vezes, porém, a sequência de símbolos é idiomática e não está na documentação de um idioma. Como um estranho saberia, por exemplo, que um $ em javascript geralmente se refere a jquery, ou prototype ou alguma outra biblioteca incluída?

Nesse caso, provavelmente há uma pergunta sobre o estouro de pilha em algum lugar que explicaria isso. No entanto, pesquisar o stackoverflow por um símbolo $ não funciona. Você poderia apenas fazer a pergunta, provavelmente obterá uma resposta. (como você fez neste caso).

Acho que deveríamos fazer uma solicitação de recurso de stackoverflow? Não é uma pesquisa geral na Web, mas o stackoverflow está posicionado de maneira exclusiva para responder a problemas como esse de uma maneira que a Web em geral não é.

edit: depois de olhar em meta.stackoverflow.com, encontrei uma solicitação para isso: /meta/19870/we-need-to-be-able-to-search-for- símbolos de pontuação

Parece que se você pressionar "fazer uma pergunta" e escrever

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

no título e, em seguida, mova o cursor para o corpo, SO sugerirá várias perguntas que já foram feitas, que são resultados muito melhores do que usar "pesquisa". Você provavelmente encontrará a resposta para qualquer consulta relacionada a símbolos. E se não, vá em frente e poste sua pergunta. Tenho certeza de que há cerca de 10 nerds muito ansiosos para dizer que a pergunta já foi feita e indicar onde estão as perguntas duplicadas, e apenas ao custo de alguns votos em potencial!

O estouro de pilha deve realmente adicionar esse recurso. É ridículo que não. Perguntas duplicadas são apenas o custo que o Stackoverflow terá que aceitar por não ter esse recurso.


0

O mais próximo que eu já encontrei é o Cuil, que com seus critérios chega tão perto quanto encontrar correspondências exatas para "ganhar $". Infelizmente, eles são para sites de enriquecimento rápido. Mas é melhor que o Google com termos como C # e C ++.


0

A resposta, é claro, é o Google :-) Em particular, a Pesquisa de código do Google . Veja, por exemplo, as consultas para seus pedidos: ( editar: corrigidos os links)

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

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

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

EDIT: Ok, desde o seu último comentário até a pergunta, entendo o seu ponto agora. Isso seria útil para muitos (para mim, apenas as poucas vezes na minha vida que eu poderia precisar). Mas, tanto quanto eu sei, não há como fazer isso. Se você procurar nos fóruns por "busca de símbolos", encontrará muitas reclamações como esta .

A coisa mais próxima que eu encontrei é essa, que fica muito feliz em procurar símbolos (mas apenas nessa comunidade relativamente pequena, que não é o que você procura): http://perlmonks.org/

Por que não escrevemos um mecanismo de pesquisa como programador?


10
Quero pesquisar na Internet, exatamente como ao usar o Google, principalmente para documentação. Estou não busca código.
static_rtti

1
Talvez pudéssemos escrever esse mecanismo de pesquisa. Então teríamos que indexar a Internet, o que é um problema maior. Acho que muitos de nós não terão condições de comprar data centers do tamanho do Google com largura de banda no nível do Google, e é disso que precisamos para começar.
22430 David Thornley

5
Certamente não precisamos da largura de banda nem do poder de processamento nem da velocidade. Os programadores são uma pequena fração dos usuários da Web e, para esse serviço, poderiam esperar mais segundos do que em uma pesquisa comum do Google. Certamente o armazenamento pode ser um problema, mas, novamente, se encontrarmos uma maneira inteligente de indexar apenas páginas "relacionadas à programação", então estamos definidos: acredito que um pequeno cluster pode lidar com isso com bastante facilidade! Agora, desenvolver o algoritmo certo e o sistema de classificação certo, isso pode ser difícil.
094 Davide

1
Esta resposta foi aceita automaticamente devido a recompensa? (Você pode un aceitar-lo, agora que bounties não causam auto-aceitar?)
Samb

32
Este serviço não está mais disponível. A Pesquisa de código do Google foi encerrada em 15 de janeiro de 2012 como parte de sua "varredura de outono".
animuson

0

Aqui está o que eu uso:

www.koders.com - indexa vários projetos de código aberto; portanto, se eu quiser saber como algo é feito, basta encontrar no código-fonte o que eu preciso. E funciona muito bem.


1
Não responde à minha pergunta, leia a pergunta e os comentários com atenção antes de responder.
static_rtti

Na verdade, eu respondi sua pergunta :) Você solicitou um mecanismo de pesquisa que pudesse suportar consultas como <$ e assim por diante. E o que eu mostrei a você faz exatamente isso! :) Na verdade, e mais, porque, como é um mecanismo de pesquisa focado no desenvolvedor, todo o conteúdo que você obtém é exatamente código. O código que você precisa + os comentários relacionados a ele. Talvez você devesse tentar.
Kico Lobo

Eu tentei, eu sabia muito sobre isso antes, na verdade, mas não responde à minha pergunta (leia os comentários do esclarecimento para entender o porquê).
static_rtti

-1

Os mecanismos de pesquisa de código aberto têm indexadores muito mais flexíveis do que qualquer outra pessoa. Se outra pessoa não tiver escrito um tokenizador que permita símbolos, é fácil escrever o seu. Eu olhava para Solr / Lucene, Xapian, Sphinx e Ferret.

Além disso, não há limite irritante de 64 resultados na API do Google AJAX!


3
Ele não está pedindo um indexador que ele pode executar a si mesmo
reinierpost

1
Ele também não está pedindo um indexador que ele mesmo possa executar. Soluções alternativas ainda são soluções.
11119 Justin Johnson

-3

OK, então deixe-me colocar meu 2c e ver se consigo esclarecer isso. Você tem, possivelmente, três pesquisas para fazer:

  1. O que é "$ <"?
  2. Como podem ser pesquisadas cadeias literais como $ foo ou <<<?
  3. Se eu não souber o nome de alguma coisa e meu mecanismo de pesquisa não me permitir procurar por cadeias literais, como posso procurá-la?

O primeiro caso é fácil, é o nome do primeiro pré-requisito que um processo de fabricação precisa para o destino que está sendo construído. Veja http://www.gnu.org/software/make/manual/make.html#Automatic-Variables, por exemplo.

O segundo caso é bem difícil. O Google diz que, com muito poucas exceções, a pontuação é ignorada (consulte http://www.google.com/support/websearch/bin/answer.py?answer=134479 ). Portanto, isso exclui muitas das pequenas coisas que você tem no código, como "++" e "<<". Obviamente, o Google precisa aplicar alguma inteligência nisso, por exemplo, permite pesquisar por "C ++" como uma unidade por si só. Embora talvez o mundo fosse um lugar melhor se o C ++ desaparecesse da Internet :)

O terceiro caso pertence a algum lugar entre biblioteconomia e filosofia. Wittgenstein sem dúvida teria algo conciso para dizer como "não podemos procurar aquilo sobre o qual não podemos falar", mas pragmaticamente você não tem escolha a não ser pensar em termos alternativos que possam descrever seu elemento. Por exemplo, "átomo", "variável", "operador" e afins.

Espero que ajude!

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.