para hechas aplicaciones python django search search-engine

para - aplicaciones android hechas en python



¿Cuál es la mejor aplicación de búsqueda de Django? (15)

Creo que voy a tener que darle un grito a Djapian.

Es sólido como una roca ... simplemente despliega una distribución de fuente y mira dentro. Código de primera clase, no hay muchos comentarios aunque ...

Todavía es un proyecto de software joven, pero creo que la comunidad django debería arrojar su peso detrás de este.

Estoy construyendo un proyecto de Django que necesita funcionalidad de búsqueda, y hasta que haya un django.contrib.search , tengo que elegir una aplicación de búsqueda. ¿Así que cuál es el mejor? Por "mejor" quiero decir ...

  • fácil de instalar / configurar
  • tiene una API compatible con Django o al menos con Python
  • puede realizar búsquedas razonablemente complejas

Aquí hay algunas aplicaciones de las que he oído hablar, por favor sugiérale a otras si conoces alguna:

También me gustaría evitar el uso de un motor de búsqueda de terceros (como Google SiteSearch), porque algunos de los datos que me gustaría indexar son solo para miembros del sitio y no deberían ser públicos.


Eche un vistazo a Haystack Search , una nueva capa de abstracción de búsqueda basada en modelos que actualmente es compatible con Xapian , Solr y Whoosh . Parece que está bien soportado y documentado.


Encontré a Djoosh que confía en el motor de búsqueda externo de pitón puro Whoosh para que funcione bien con mi cerebro ''Python''.



Es posible que desee ver la solango (también conocida como "Solango") que viene con una buena documentación para que comience ...



Gracias Garth. ¡Había visto que djangosearch quería ser la búsqueda oficial de Django, pero dudaba en usarlo porque no pude encontrar ninguna documentación! Afortunadamente, hay un archivo README en subversión que no había visto antes, y hace que la API parezca genial:

# set up the model class Event(models.Model): title = models.CharField(max_length=255) date = models.DateField() is_outdoors = models.BooleanField() index = djangosearch.ModelIndex(text=[''title''], additional=[''date'', ''is_outdoors'']) # run a search results = Event.index.search("django conference")


Gracias Joe,

Decidimos ir con Tsearch2 y un adaptador postgres personalizado. Tsearch2 no necesita un proceso adicional para ejecutarse, lo cual era conveniente ya que estamos en un alojamiento WebFaction con memoria limitada ... Todavía no está completamente listo, pero parece ser una buena solución ...


Justin, primero probaría con djangosearch : Jacob Kaplan-Moss (desarrollador principal de Django) está trabajando en ello.

Peligros potenciales:

  • La página de inicio advierte que la API podría no ser del todo estable

Beneficios potenciales:

  • "El objetivo a largo plazo es que esto se convierta en django.contrib.search ".

La página de códigos de google para djangosearch indica que ya no se encuentra en desarrollo activo, y sugiere haystack o solango .


Parece que todos aquí se perdieron django-xappy

Después de una evaluación rápida de todos los complementos de búsqueda existentes para Django, encontré este como el más flexible y fácil de usar. Es difícil en algunos puntos, pero sigue siendo la mejor forma de utilizar la potencia del motor de búsqueda Xapian dentro de los proyectos de Django.


Recomendaría Sphinx para la búsqueda y agregación de texto completo, y django-sphinx es lo suficientemente bueno para el uso de producción. Descubrimos que Sphinx era la forma más rápida y menos costosa de indexar y buscar nuestros documentos y que django-sphinx era una buena envoltura sobre el cliente de sphinx.

El grupo por agregación es especialmente agradable, por ejemplo, si desea mostrar cuántos documentos con una determinada etiqueta o un determinado autor (o ambos) coinciden con una búsqueda. En memoria, las actualizaciones de atributos también eran convenientes, especialmente para eliminar artículos eliminados inmediatamente.


Si está dispuesto a utilizar un motor de búsqueda de terceros, puedo recomendar Yahoo BOSS y bitbucket.org/jaap3/django-bosssearch .

Yahoo BOSS es un servicio pago, pero le permite configurar y mantener otro software de búsqueda en su servidor.


Si tiene una gran cantidad de datos para indexar o espera mucho tráfico, le sugiero que utilice algún motor de búsqueda externo, como Solr . De esta forma, mantendrá el enfoque de compartir nada y podrá escalar los componentes de su sitio de forma independiente.


Solo necesitaba una solución muy rápida que fuera sin complicaciones para una aplicación interna.

Encontré el artículo Añadiendo búsqueda a Django en un instante , ¡y eso funcionó espléndido para mí!

Obviamente carece de la velocidad, la escalabilidad y las características de los proyectos reales, como Haystack, pero este es más fácil de configurar, y realmente no necesito nada más que la palabra clave AND-search.