Skip to content

App to inventory and analysis the prices of Amazon products

License

Notifications You must be signed in to change notification settings

falken20/primazon

Repository files navigation

drawing Personal Portfolio web

Version GitHub language count GitHub Top languaje Test coverage GitHub License

Richi web Twitter

Flask web where you can save products from Amazon to observe prices along a period of time


Deploy
gcloud app deploy
Setup
pip install -r requirements.txt
Running the app
flask run
Setup tests
pip install -r requirements-tests.txt
Running the tests with pytest and coverage
./check_app.sh

or

coverage run -m pytest -v && coverage html --omit=*/venv/*,*/tests/*
Environment vars
PROXY=N
LEVEL_LOG = ["DEBUG", "INFO", "WARNING", "ERROR"]

# To use Supabase PostgreSQL DB
DATABASE_URL=

# SQlite database data (only for local)
DB_SQLITE_URL=sqlite://
DB_SQLITE_NAME=primazon.db

# MailJet keys
MAILJET_APIKEY_PUBLIC=...
MAILJET_APIKEY_PRIVATE=...
RECEIVER_EMAIL=...

Versions
  • 1.6.0 Send email from cron when prices change
  • 1.5.0 New cron for checking product prices in background
  • 1.4.0 New screen vision and cron process to validate prices
  • 1.3.0 New DB hosting
  • 1.2.0 New Log model integrated
  • 1.1.0 Adaptations to ORM SQLAlchemy

Learning tips
  • Send emails with smtplib and ssl
  • Scraping web with selectorlib and BeautifulSoup
  • Use MailJet as free SMTP server (mailjet-apiv3-python): https://dev.mailjet.com/