def onBuscar(self,button): ''' Pasea el spider en la web usando la url de busqueda de la misma. asi lo que hacemos es cambiar la start_url del mismo para recuperar los enlaces resultados de la busqueda ''' texto = self.textoBusqueda.get_text() busqueda=texto.lstrip().rstrip() busqueda = 'http://www.elitetorrent.net/busqueda/'+busqueda.replace(' ','+') self.fromspider = True basededatos = TorrentSpiderDB() basededatos.vaciaTmp() subprocess.call('scrapy crawl torrent -a destino=\"tmp\" -a url=\"'+busqueda+'\"', shell=True) resultados = [] resultados = basededatos.cargaDatos("tmp") basededatos.cierraBD() self.listmodel.clear() for i in range(len(resultados)): self.listmodel.append(resultados[i]) self.statusbar.push(0,"Cargados "+str(len(resultados))+" registros") if (len(resultados)>0): self.habilitaTool(True) else: self.habilitaTool(False) self.preguntarOK("No se ha recuperado ningun resultado? Intenta buscar: \'horror story\'",600)
def onRecuperarDB(self,button): ''' carga en la lista los enlaces que tengamos guardados en la base de datos ''' self.fromspider = False basededatos = TorrentSpiderDB() global resultados resultados = basededatos.cargaDatos("db") basededatos.cierraBD() self.listmodel.clear() for i in range(len(resultados)): self.listmodel.append(resultados[i]) self.statusbar.push(0,"Cargados "+str(len(self.listmodel))+" registros") if (len(resultados)>0): self.habilitaTool(True) else: self.habilitaTool(False)
def onRunSpider(self, button): ''' corre el spider, guarda los datos en la tabla temporal y los muestra en la lista ''' #del resultados[:] self.fromspider = True run_spider() self.listmodel.clear() resultados = [] basededatos = TorrentSpiderDB() resultados = basededatos.cargaDatos("tmp") basededatos.cierraBD() for i in range(len(resultados)): self.listmodel.append(resultados[i]) self.statusbar.push(0,"Cargados "+str(len(resultados))+" registros") if (len(resultados)>0): self.habilitaTool(True) else: self.habilitaTool(False)