Git Product home page Git Product logo

scrappdept's Introduction

Scraper de Inmuebles 🏠

Me quiero mudar

Este proyecto busca inmuebles en algunas páginas con los filtros que quieras y manda un bonito mensaje de telegram a un grupo con los inmuebles nuevos que encuentra en esas páginas.

Páginas Habilitadas ✅

Instalación 🔧

Requerimientos Previos 🔩

  1. Saber lo que es una terminal/consola y poder manejarte entre carpetas en una.

  2. Vas a necesitar tener instalado Python. Si no lo tenés instalado, acá te dejo un link

  3. Clonar este repo. Si no sabés clonar un repositorio, acá te dejo un link

Setup 🔨

  1. Abrir una terminal/consola/tostadora donde puedas usar python.

  2. Ir a la carpeta del repositorio en tu computadora.

  3. Crear un entorno virtual y activarlo corriendo lo siguiente:

python -m venv venv
source venv/bin/activate
  1. Instalar lo que necesita el comando para funcionar:
pip install -r requirements.txt
  1. Listop, ahora podes empezar a configurar el script!

Configuración 📝

Bot de Telegram ✉️

  1. Para poder utilizar este proyecto tenés vas a tener que crearte un bot, agregarlo a un grupo. Nosotros vamos a utilizar el token del bot y el "Chat ID" del grupo. Si no sabes cómo conseguir esas cosas acá te dejo un link.

  2. No pierdas estas cosas, las vamos a necesitar en el futuro.

Links de Búsqueda 🔍

Es necesario decirle al script los filtros que vos pones cuando buscas inmuebles y lo vamos a hacer pasandole el link generado por las páginas cuando agregas los filtros a la búsqueda.

  1. Buscá en las páginas habilitadas que desees con los filtros que queres y andá a la segunda página de la búsqueda. (Zona, si es casa o depto, dormitorios, lo que quieras)

  2. Copiá el link que te sale cuando haces esa busqueda, pegalo en algún lado y fijate que al final puede decir algo cómo -pagina-2.html borrá el número de página y pone {}. El link se debería terminar con algo así -pagina-{}.html, -pagina-{} o &page={} (no está implementada la paginación para mercadolibre así que no es necesario hacer esto último para ese link).

  3. No pierdas estas cosas, las vamos a necesitar en el futuro.

Archivo de Configuración 📄

  1. Creá un archivo dentro de la carpeta del repositorio que se llame config.yaml que se vea más o menos así:
persist: true # En `true` hace que el script no pare
sleep_time: 3 # Hace que el script se ejecute cada 3 segundos
bot_token: "1234567899:asdasdsadasdasdsaddgZ5RAguDlq67dA" # Token de bot
chat_room: "-1801651256762" # id de chat
pages: 5 # Cantidad de páginas que ver por link
zonaprop_full_url: "https://www.zonaprop.com.ar/loquesea-pagina-{}.html" # busqueda zonaprop
mercadolibre_full_url: "https://inmuebles.mercadolibre.com.ar/departamentos/alquiler/loquesea" # busqueda mercadolibre
argenprop_full_url: "https://www.argenprop.com/loquesea-pagina-{}" # busqueda argenprop
la_voz_full_url: "https://clasificados.lavoz.com.ar/inmuebles/loquesea&page={}" # busqueda la voz
properati_full_url: "https://www.properati.com.ar/s/departamento/alquiler/loquesea&page={}" # busqueda properati

Donde:

  • persist (opcional, default: false): Hace que el script se ejecute sin parar. Si es configurado en false va a hacer la busqueda una sola vez, en true busca nuevos departamentos permanentemente.
  • sleep_time (opcional, default: 5): Tiempo que espera antes de hacer la busqueda nuevamente en segundos.
  • bot_token: Token del bot de telegram.
  • chat_room: id del chat en donde el bot envía los mensajes.
  • pages (opcional, default: 3): Cantidad de páginas en las que querés que vea en tu búsqueda en zonaprop/argenprop.
  • pagina_full_url (opcional): URL del link en el que buscar.
  1. Profit.

Uso 🌈

  1. Abrir una terminal

  2. Ir a la carpeta del repositorio

  3. Activar el entorno virtual:

source venv/bin/activate
  1. Correr el script pasándole el archivo de configuración
python main.py ./config.yaml

Listo! 🎉 Ahora te deberían empezar a llegar mensajes desde tu bot.

Agradecimientos 🙏

Muchas gracias a fernandezpablo85 porque este articulo es el que dió origen a este proyecto y ayudó a que pueda encontrar una casa.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.