WIP scrapeo de precios en supermercados
Find a file
2024-07-13 12:43:24 -03:00
.devcontainer devbox 2024-02-23 10:26:30 -03:00
.github/workflows basic rust api 2024-06-29 21:04:59 -03:00
.vscode chore(vscode): formatOnSave 2024-06-22 21:27:29 -03:00
data lista jumbo actualizada 2024-01-11 15:30:25 -03:00
db-datos index fetched_at 2024-06-29 19:16:23 -03:00
rust WIP: postgres 2024-07-13 12:43:24 -03:00
sitio upgrade a drizzle-orm 0.30 2024-04-12 20:23:51 -03:00
.dockerignore docker: usar debian 2024-06-17 21:13:24 -03:00
.gitattributes carrefour.txt 2023-12-21 14:00:46 -03:00
.gitignore ignorar todo lo que tiene .db 2024-02-06 19:28:56 -03:00
devbox.json devbox: sacar cargo de dependencias 2024-04-04 23:00:09 -03:00
devbox.lock devbox: sacar cargo de dependencias 2024-04-04 23:00:09 -03:00
Dockerfile docker: usar debian 2024-06-17 21:13:24 -03:00
pnpm-lock.yaml index fetched_at 2024-06-29 19:16:23 -03:00
pnpm-workspace.yaml borrar scraper js 2024-01-15 15:47:34 -03:00
readme.md mira precios 2024-04-08 17:07:47 -03:00
tsconfig.json tsconfig: arreglar diagnostics 2024-01-24 18:49:17 -03:00

preciazo

scrapeo "masivo" de precios y datos en supermercados argentinos

¡entrá a la demo!

¿te interesa colaborar con el proyecto? hablame por Twitter, por email o por GitHub :)

proyectos similares

componentes

scraper-rs

el scraper busca links de productos a scrapear, descarga todos los links, extrae varios datos y los guarda en una base de datos SQLite (definida en db-datos).

(antes había un scraper escrito en JavaScript, pero por problemas de reliability lo reescribí en Rust (?))

sitio

el sitio renderiza páginas a partir de la base de datos y hace gráficos lindos.

setup

para el schema de la base de datos y el sitio, es necesario Node.js y pnpm. para el scraper, es necesario Rust estable.

crea la base de datos:

cd db-datos/
pnpm install
pnpm migrate

después, escrapea un sample de productos de Carrefour a una BD:

cd ../scraper-rs/
cargo run -- fetch-list ../data/samples/Carrefour.50.txt

ahora miralo en el sitio:

cd ../sitio/
pnpm install
pnpm dev