Giter VIP home page Giter VIP logo

misc-python-apps's Introduction

Misc Python Apps

Here are some random applications in Python that run in a terminal and are helpful for various reasons. These are just for fun and to learn Python. These are in no way meant to be used for anything serious, and many have zero error checking or validation. Maybe that is something I can come back and add in the future.

Requirements

  • To run the apps, you'll need to have Python installed on your system. You can download it from here.
  • Some apps require additional packages (details below), so you may need to install those as well. Do so by installing pip, a Python package manager.

Running the apps

  • Download, clone, or fork this repository.
  • Open the terminal and navigate to the directory where the repository is located.
  • Change directories into your chosen app.
  • Run the app using the command python3 main.py inside the chosen app directory.
  • NOTE: Some apps may require you to install additional Python packages. Use the requirements.txt file to install the packages by running pip3 install -r requirements.txt in the app directory. Apps with requirements.txt file are marked with an asterisk (*) in the list below.

App Explanations

  • Batch Ask OpenAI - Asks the Open AI API a list of questions (from within a .csv) and generates a markdown file for each questions. Make sure to set your OPENAI_API_KEY by copying the example.env file to .env and adding your key.
  • CSV to JSON - Converts a CSV file to a JSON file. This uses a csv file called data.csv within the csv-to-json directory. Want to convert your own? Replace the data.csv file with your own and run the app with python3 main.py in the directory. The output file will be called data.json and will be located within the csv-to-json directory.
  • Generate README - This is a simple README template generator that takes in the project name and outputs README sections with links to the sections in markdown.
  • Get Rain Estimate - Using the openweathermap API and a user specified zip code, this app will tell you if it's going to rain in the next 5 days. This does require an openweathermap API key which you can get here.
  • Markdown to HTML(*) - Generates HTML from a markdown file (index.md) including HTML boilerplate elements.
  • Password Generator - Generates a random password with letters, numbers, symbols, and punctuation using user input for the password length. (Between 8 and 64 characters)
  • Retirement Calculator - Calculates how much you can withdraw on your retirement accounts using earn compounded interest. This also lets you calculate a yearly withdraw amount using a known pension. In addition, NYSLRS Tier 6 retirement benefits can be calculated using this app (because that's what my wife has, lol).
  • Scrape All Copy(*) - Scrapes all the text from a website and saves it to a text file. Has requirements.txt file for installing the required modules.
  • Scrape Project Idea(*) - Scrapes https://rosettacode.org/wiki/Category:Programming_Tasks for project ideas. Has requirements.txt file for installing the required modules.
  • Scrape Table(*) - Scrapes table data (tr, td, etc) from a user specified website and saves it to a CSV file in the root of the directory. Has requirements.txt file for installing the required modules.
  • Scrape Temperature(*) - Gets the current temperature for a given zip code. This uses BS4 to get the current temperature from https://www.yahoo.com/news/weather.
  • Youtube Views and Subs(*) - Gets the number of views and subscribers for a given youtube channel.

How these apps are useful to me

  • Batch Ask OpenAI - This has the ability to generate markdown files for any number of topics which I can then host for free as a static site.
  • CSV to JSON Converter - I'm working on a static site that has individual pages for trees. Converting the data from a CSV file to JSON makes it easier to build the pages with Jekyll pagemaster. I have found that sometimes the formatting used by my client in csv doesn't always mesh well with pagemaster, but JSON does!
  • Generate README - I'm using this to generate README markdown files for projects to make them have a consistent look and feel. It also builds out a table of contents with links, saving me the time of having to do that manually. This may evolve in the future, but for now it works and saves me time.
  • Get Rain Estimate - I'm using this along with the macOS app called Alfred to quickly look up if I can expect rain in the next coming days. This informs me if I need to water my vegetable garden during the growing season.
  • Markdown to HTML - A quick way to format markdown into HTML without needing to pass the markdown through a site generator.
  • Password Generator - Sometimes you want to generate a password quickly and or want to know the password is truly random using python's random module.
  • Retirement Calculator - This is a tool that informs me of an estimate of how much I can withdraw from my retirement accounts each year. This is useful for estimating how much I can spend each year in retirement.
  • Scrape Apps - A way to both understand python / web scraping and to easily and quickly get data from sites for data hoarding or to use in other projects!
  • Youtube Views and Subs - I'm using this to get the number of views and subscribers for a given youtube channel. I'm using this to track my own channel's growth.

Contributing

I'm a Python noob, so if I'm doing something wrong or if you see something that can be done differently, please let me know by opening an issue or submitting a pull request.

misc-python-apps's People

Contributors

leabs avatar

Stargazers

 avatar  avatar  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.