Git Product home page Git Product logo

bf_proj's Introduction

README Out of date since code reformat.

Updated 2/23/2024

Bigfoot Tracking and Analysis Project - Version 1.3

Patterson-Gimlin Bigfoot

Overview

The Bigfoot Tracking and Analysis Project is an automated system designed to collect and analyze sightings of Bigfoot from the Bigfoot Field Researchers Organization (BFRO) website.

Version 1.3

  • Major restructure of files. Easier to understand.
  • inserted error handling.

Version 1.2

  • Introduction of new main script that replaces original bash script
  • Removed scraping recent sightings, may add again in future but currently the project drops the whole database every time it runs.
  • Removes local files after uploading to database

Version 1.1

  • Determines whether the entire website should be scraped or only the recent sightings
  • Runs webscraping tools
  • Cleans columns of unwanted keys from the webscraping process
  • Inserts json data into PostgreSQL databse

Components

File Structure

  • bigfoot_factory/sql_commands/create_table.py
  • bigfoot_factory/sql_commands/insert_data.py
  • bigfoot_factory/sql_commands/stored_proc_python.py
  • bigfoot_factory/clean_db.py
  • bigfoot_factory/db_check.py
  • bigfoot_factory/initiate_db.py
  • bigfoot_factory/update_db.py
  • datalake/bfro_data.json
  • datalake/cleaned_columns_bfro_data.json
  • media/
  • webscrapers/

Packages Used

  • beautifulsoup
  • psycopg2
  • dotenv

Workflow

version 1.2 architecture

  1. Initializes Database:
    • Drops database in ElephantSQL if it exists and creates new one.
  2. Web Scraping:
    • runs complete_webscrape.py
  3. Clean Data:
    • Cleans unwanted columns
    • Slight formatting
  4. Updates Database:
    • Uploads cleaned json to ElephantSQL hosted database
  5. Drops local files
    • Removes all local files to keep a clean workspace

Release Plan

  • Version 1.2:
    • Clean year and date column.
    • Clean submitted_by column.
    • Clean follow_up colum.
  • Version 1.3:
    • Automate SQL Stored Procedures using python script
    • Clean nearest_town columns.

Installation and Execution

Note: This project uses python3.

  1. Clone Repository:
    git clone https://github.com/CollinClifford/bf_proj
    cd bf_proj
  2. Install Dependencies:
    pip install -r requirements.txt
  3. Configure Environment Variables: Create a .env file in the project root with the necessary environment variables with the following as a template.
    # Database connections
    DB_HOST=
    DB_NAME=
    DB_USER=
    DB_PASSWORD=
    DB_PORT=
    SSL_MODE=disable
  4. Run the Program:
    • Execute the bash script:
    python3 ./main.py
    

This setup should ensure a seamless installation and execution of the Bigfoot Tracking and Analysis Project. Please reach out to [email protected] for any questions.

bf_proj's People

Contributors

collinclifford avatar

Watchers

 avatar

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.