Example #1
0
 def handle(self, *args, **options):
     inicio =0
     total=1000
     solr_connection = SolrConnection(settings.SOLRSERVER)
     
     for i in range(50):
         # materias = Materia.objects.filter(corpo__icontains='saibamais')[inicio:total]
         datainicio = datetime.datetime(day=1,month=6,year=2011)
         datafim = datetime.datetime(day=1,month=2,year=2012)
         materias = Materia.objects.filter(ultima_publicacao__gt=datainicio, ultima_publicacao__lt=datafim)[inicio:total]
         
         erros = 0
         for m in materias:
             consulta = solr_connection.query('identifier:"%s"'%m.obtem_url_visao_de_busca(search_type='solr'))
             if not consulta.results:
                 try:
                     m.notifica_barramento("publicar")
                 except:
                     print "erro ao notificar %s" % m.id
                     erros +=1
                 # time.sleep(0.1)
             else:
                 # print "notificada %s" % m.id
                 pass
         print inicio, total
         print "total de erros=>",erros
         time.sleep(10)
         incremento = total - inicio
         inicio += incremento
         total += incremento
         solr_connection.close()
def querySolr(words, editorias, total=50):
    materias = []
    solr_connection = SolrConnection(settings.SOLRSERVER)
    if not words:
        return materias
    query = [' OR '.join('(%s)' % tag for tag in words)]
    if editorias:
        query = ['((%s) %s)' % (query[0], editorias)]
    query = query[0].encode('utf-8')
    try:
        consulta = solr_connection.query(query + " isIssued:true type:texto publisher:G1 ", wt='json', start=0, rows=total,
                                   indent='on', sort='score desc, issued', sort_order='desc', )
        # print "materias ==>", len(consulta.results), query
        if consulta.results:
            # materias += [(materia, materia['score'] ) for materia in consulta.results]
            materias += consulta.results
    except Exception, e:
        print str(e)
        print "deu pau na query", query
        pass
Example #3
0
 def handle(self, *args, **options):
     solr_connection = SolrConnection(settings.SOLRSERVER)
     solr_connection.delete_query('publisher:globocore')
     solr_connection.close()