Reds es una búsqueda de redis de peso ligero para node.js.
Pyreds es un puerto de rojos de Python.
Pyreds requiere un servidor Redis en ejecución. Consulte el arte rápido de Redis para las instrucciones de instalación.
Para instalar pyreds, simplemente:
$ pip install pyredsEs posible que necesite instalar datos NLTK:
>>> import nltk
>>> nltk.download( ' stopwords ' )Lo primero que querrá hacer es crear una instancia de búsqueda, que le permita pasar una llave, utilizada para la separación de nombres dentro de Redis para que pueda tener varias búsquedas en la misma DB.
>>> import pyreds
>>> search = pyreds.create_search( ' pets ' )Pyreds actúa contra ID numéricos o de cadena arbitrarios, por lo que podría utilizar esta biblioteca con esencialmente cualquier cosa que desee, incluso combinando tiendas de datos. El siguiente ejemplo solo usa una lista para nuestra "base de datos", que contiene algunas cadenas, que agregamos a Pyreds llamando a la búsqueda#index () rellenando el cuerpo de texto y una identificación de algún tipo, en este caso el índice.
>>> strs = []
>>> strs.append( ' Tobi wants four dollars ' )
>>> strs.append( ' Tobi only wants $4 ' )
>>> strs.append( ' Loki is really fat ' )
>>> strs.append( ' Loki, Jane, and Tobi are ferrets ' )
>>> strs.append( ' Manny is a cat ' )
>>> strs.append( ' Luna is a cat ' )
>>> strs.append( ' Mustachio is a cat ' )
>>> for i, v in enumerate (strs):
... search.index(v, i)Para realizar una consulta contra Pyreds, simplemente invoque Search#Query () con una cadena, que devuelve una instancia de consulta. Luego invoque consulta#end (), que devuelve una lista de IDS cuando está presente, o una lista vacía de lo contrario.
>>> ids = search.query( ' Tobi dollars ' ).end()
>>> print ( ' Search results for "Tobi dollars" ' ))
>>> for id in ids:
... print ( ' - {} ' .format(strs[ id ]))Por defecto, Pyreds realiza una intersección de las palabras de búsqueda. El ejemplo anterior produciría el siguiente resultado ya que solo una cadena contiene "Tobi" y "Dóleos":
Search results for "Tobi dollars":
- Tobi wants four dollarsPodemos ajustar a Pyreds para realizar una unión aprobando "unión" o "o" para buscar#tipo () entre la búsqueda#query () y la consulta#end (), lo que indica que cualquiera de las constantes calculadas puede estar presente para que la identificación coincida.
>>> ids = search.query( ' tobi dollars ' ).type( ' or ' ).end()
>>> print ( ' Search results for "Tobi dollars" ' ))
>>> for id in ids:
... print ( ' - {} ' .format(strs[ id ]))La búsqueda sindical produciría lo siguiente ya que tres cadenas contienen "Tobi" o "dólares":
Search results for "tobi dollars":
- Tobi wants four dollars
- Tobi only wants $4
- Loki, Jane, and Tobi are ferrets>>> search = pyreds.create_search(key)
>>> search.index(text, id )
>>> search.remove( id )
>>> query = search.query(text[, type ]) # will return a `Query` instance
>>>
>>> query.between(start, stop)
>>> query.type( type )
>>> query.end()La licencia del MIT