def test_descripcion_2(self): propiedad = zonaprop.Propiedad(descarga_departamento2, True) descripcion = propiedad.descripcion comienzo = "54 metros cuadrados con balcón en edificio" self.assertTrue(descripcion.startswith(comienzo)) fin = "EN EL EDIFICIO Cristina Ver datos 8444 ofic Ver datos" self.assertTrue(descripcion.endswith(fin))
def test_caracteristicas_3(self): propiedad = zonaprop.Propiedad(descarga_departamento3, True) caracteristicas = propiedad.caracteristicas self.assertIn("Características generales", caracteristicas.keys()) self.assertIn("Servicios", caracteristicas.keys()) self.assertIn("Ambientes", caracteristicas.keys()) self.assertIn("Características", caracteristicas.keys())
def test_descripcion_1(self): propiedad = zonaprop.Propiedad(descarga_departamento, True) descripcion = propiedad.descripcion comienzo = ("Departamento de categoría con impresionante" " vista al Parque") self.assertTrue(descripcion.startswith(comienzo)) fin = "Vivanco Negocios Inmobiliarios desde Sumaprop." self.assertTrue(descripcion.endswith(fin))
def main(url, archivo_salida): busqueda = zonaprop.ResultadoBusqueda(url) resultados = busqueda.cantidad_de_resultados paginas = busqueda.cantidad_de_paginas print(f"Encontré {resultados} resultados en {paginas} páginas.") propiedades = [] for n in tqdm(range(1, paginas + 1), desc='Página'): url_pagina = busqueda.listado_pagina(n) logging.debug(f"Parseando página {url_pagina}") listado = zonaprop.Listado(url_pagina) for url in tqdm(listado.propiedades_url, desc='Propiedad', leave=False): logging.debug(f"Parseando propiedad {url}") propiedad = zonaprop.Propiedad(url) propiedades.append(propiedad) info = [] for i, p in enumerate(propiedades): info.append(p.informacion) df = pd.DataFrame(info) df.to_csv(archivo_salida)
def test_estado_2(self): propiedad = zonaprop.Propiedad(descarga_departamento2, True) estado = propiedad.estado self.assertEqual(estado, "Excelente")
def test_alquiler_5(self): propiedad = zonaprop.Propiedad(descarga_departamento5, True) alquiler = propiedad.alquiler self.assertEqual(alquiler, 25000)
def test_contacto(self): propiedad = zonaprop.Propiedad(descarga_departamento, True) with self.assertRaises(NotImplementedError): propiedad.contacto()
def test_sup_cubierta_2(self): propiedad = zonaprop.Propiedad(descarga_departamento2, True) sup_cubierta = propiedad.superficie_cubierta self.assertEqual(sup_cubierta, 51)
def test_banios_2(self): propiedad = zonaprop.Propiedad(descarga_departamento2, True) banios = propiedad.banios self.assertEqual(banios, 1)
def test_parser_propiedad_false(self): with self.assertWarns(UserWarning): propiedad = zonaprop.Propiedad(url_listado) prop = propiedad._es_propiedad self.assertFalse(prop)
def test_parser_propiedad_local_false(self): with self.assertWarns(UserWarning): propiedad = zonaprop.Propiedad(descarga_listado, True) prop = propiedad._es_propiedad self.assertFalse(prop)
def test_direccion_6(self): propiedad = zonaprop.Propiedad(descarga_departamento6, True) direccion = propiedad.direccion self.assertEqual(direccion, "Av. Luis María Campos 1308")
def test_direccion_7(self): propiedad = zonaprop.Propiedad(descarga_departamento7, True) direccion = propiedad.direccion self.assertEqual(direccion, "Olazabal 2580")
def test_direccion_2(self): propiedad = zonaprop.Propiedad(descarga_departamento2, True) direccion = propiedad.direccion self.assertEqual(direccion, "Ciudad de la Paz")
def test_direccion_3(self): propiedad = zonaprop.Propiedad(descarga_departamento3, True) direccion = propiedad.direccion self.assertEqual(direccion, "Teodoro Garcia al 2100")
def test_direccion_1(self): propiedad = zonaprop.Propiedad(descarga_departamento, True) direccion = propiedad.direccion self.assertEqual(direccion, "Doblas al 100")
def test_expensas_4(self): propiedad = zonaprop.Propiedad(descarga_departamento4, True) expensas = propiedad.expensas self.assertIsNone(expensas)
def test_expensas_2(self): propiedad = zonaprop.Propiedad(descarga_departamento2, True) expensas = propiedad.expensas self.assertEqual(expensas, 8000)
def test_ubicacion_mapa(self): propiedad = zonaprop.Propiedad(descarga_departamento, True) with self.assertRaises(NotImplementedError): propiedad.ubicacion_mapa()
def test_ubicacion_1(self): propiedad = zonaprop.Propiedad(descarga_departamento, True) ubicacion = propiedad.ubicacion self.assertEqual(ubicacion, "Caballito, Capital Federal")
def test_parser_propiedad_true(self): departamento = zonaprop.Propiedad(url_departamento) prop = departamento._es_propiedad self.assertTrue(prop)
def test_ubicacion_3(self): propiedad = zonaprop.Propiedad(descarga_departamento3, True) ubicacion = propiedad.ubicacion self.assertEqual(ubicacion, "Belgrano, Capital Federal")
def test_parser_propiedad_local_true(self): departamento = zonaprop.Propiedad(descarga_departamento, True) prop = departamento._es_propiedad self.assertTrue(prop)
def test_orientacion_2(self): propiedad = zonaprop.Propiedad(descarga_departamento2, True) orientacion = propiedad.orientacion self.assertEqual(orientacion, "NO")
def test_ambientes_2(self): propiedad = zonaprop.Propiedad(descarga_departamento2, True) ambientes = propiedad.ambientes self.assertEqual(ambientes, 2)
def test_luminosidad_2(self): propiedad = zonaprop.Propiedad(descarga_departamento2, True) luminosidad = propiedad.luminosidad self.assertEqual(luminosidad, "Muy luminoso")
def test_sup_total_2(self): propiedad = zonaprop.Propiedad(descarga_departamento2, True) sup_total = propiedad.superficie_total self.assertEqual(sup_total, 54)
def test_descripcion_3(self): propiedad = zonaprop.Propiedad(descarga_departamento3, True) descripcion = propiedad.descripcion comienzo = "Hermoso piso en alquiler en pleno Belgrano" self.assertTrue(descripcion.startswith(comienzo)) self.assertTrue(descripcion.endswith("SEGUINOS EN FACEBOOK"))
def test_dormitorios_1(self): propiedad = zonaprop.Propiedad(descarga_departamento, True) dormitorios = propiedad.dormitorios self.assertEqual(dormitorios, 3)
def test_alquiler_1(self): propiedad = zonaprop.Propiedad(descarga_departamento, True) alquiler = propiedad.alquiler self.assertIsNone(alquiler)