Skip to content

Latest commit

 

History

History
246 lines (187 loc) · 7.99 KB

File metadata and controls

246 lines (187 loc) · 7.99 KB

Python Internship Portfolio

Python License: MIT

🏆 Python Internship Portfolio - 6 Production-Ready Projects
Python Made with Tkinter CLI API MIT

Production-ready Python projects showcasing GUI apps, CLI tools, web scraping, APIs, data analysis. Features full error handling, JSON persistence, professional UIs, and deployment-ready code. Perfect for portfolios/interviews!

⭐ Stars: [Add GitHub stars badge] | 📊 100% Test Coverage Goal

📋 Table of Contents

Overview

This repository showcases a Python Internship Portfolio with 6 progressively complex tasks:

  1. GUI Applications (Tkinter)
  2. File I/O & Text Processing
  3. Web Scraping (CLI)
  4. API Integration
  5. Data Analysis Tools
  6. Professional CLI Design

Key Skills Demonstrated:

  • OOP & Modular Design
  • Error Handling & Validation
  • Data Persistence (JSON)
  • GUI (Tkinter) & CLI Interfaces
  • External APIs & Web Requests
  • Professional Documentation

Prerequisites

Global Dependencies (install as needed per task):

pip install requests beautifulsoup4

Quick Start

cd c:/Users/devap/Documents/python_internship
# Run any task directly:
cd Task_1_to_do_list && python \"To-Do List Application.py\"
cd Task_4_web_scraper && pip install -r requirements.txt && python main.py

🚀 Tasks Overview

# 🌟 Project 🛠️ Tech ⭐ Features 📁 Key Files ⏱️ Setup Time
1 Advanced Task Manager Tkinter GUI Priority colors, time tracking, stats, shortcuts, JSON `To-Do List Application.py` 30s
2 Number Guessing Pro Tkinter + Stats 5 difficulties, streaks, ratings, full-screen `real_number_game.py` 30s
3 File Find & Replace Pure Python CLI Backups, previews, case-insensitive, multi-file `file_handling.py` 10s
4 Web Scraper CLI requests + BS4 Quotes/News/Images, JSON export, colors `main.py` + reqs 1min
5 Currency Converter API + Cache 200+ currencies, history, rate limits `converter.py` + API key 2min
6 Word Counter Pro Counter + CLI Top words table, UTF-8, stats dashboard `word_counter.py` 20s

📋 Detailed Tasks + Demos

1️⃣ 🚀 Advanced Task Manager

Modern Tkinter To-Do ⭐⭐⭐⭐⭐
Highlights: High/Med/Low priorities (🔴🟡🟢), time-tracking, filters, shortcuts, JSON save/load.
🎮 Live Demo: Priority tasks, progress bar, duration stats!

🔧 Run:

cd Task_1_to_do_list
python \"To-Do List Application.py\"

✨ Pro Features:

  • Colors: Red(High)/Yellow(Med)/Green(Low)
  • Keys: Ctrl+N add, Space complete
  • Stats: Avg time, completion %

2️⃣ 🎯 Number Guessing Pro Game

Full GUI Experience ⭐⭐⭐⭐⭐
Highlights: 5 levels (Beginner-Expert), hints, win streaks, performance ratings, immersive theme.
🎮 Live Demo: Guess number, get hints, track stats!

🔧 Run:

cd Task_2_number_game
python real_number_game.py

✨ Pro Features:

  • Ranges: 1-30 (easy) to 1-500 (expert)
  • Stats: Win rate, avg attempts, best streak
  • UI: Neon theme, animations, full-screen
cd Task_2_number_game
python real_number_game.py

Features: Binary search hints, performance ratings, JSON stats, full-screen mode.

3️⃣ 🔍 File Find & Replace Tool

Robust CLI Processor ⭐⭐⭐⭐
Highlights: Auto-backups, occurrence count, case options, error-proof.
🎮 Demo: Find/Replace with preview & confirm!

🔧 Run:

cd Task_3_file_handling
python file_handling.py

Example:

Find: Python (6 occurrences) → Java? [y/n]

✨ Features: UTF-8 safe, permission checks, empty file handling

🌐 Task 4: Professional Web Scraper

CLI scraper (no GUI) for quotes/news/links/images. Colored output, JSON export, respectful delays.

Setup & Run:

cd Task_4_web_scraper
pip install -r requirements.txt
python main.py

Features: Progress bars, BBC/Reuters support, absolute URLs.

💱 Task 5: Currency Converter

Live API CLI (Open Exchange Rates). 200+ currencies, history, 1hr caching.

Setup:

  1. Get free API key: openexchangerates.org
  2. Run: `cd Task_5_currency_converter && pip install -r requirements.txt && python converter.py`

Example: `100 USD → 92.45 EUR`

4️⃣ 🌐 Pro Web Scraper CLI

No-GUI Production Scraper ⭐⭐⭐⭐⭐
Highlights: Quotes/News/Images/Links, colored CLI, JSON export, rate-limited.
🎮 Demo: Menu → Scrape quotes → Export JSON!

🔧 Setup & Run:

cd Task_4_web_scraper
pip install -r requirements.txt
python main.py

✨ Features: Progress bars, BBC support, absolute URLs, robots.txt respect

5️⃣ 💱 Currency Converter Live

API-Powered CLI ⭐⭐⭐⭐⭐
Highlights: 200+ currencies, history/JSON, 1hr cache, rate limits.
🎮 Demo: USD→EUR + save history!

🔧 Setup:

  1. Free API: openexchangerates.org
  2. cd Task_5_currency_converter && pip install -r requirements.txt && python converter.py

✨ Features: Popular quick-select (USD/EUR/INR..), offline cache

6️⃣ 📊 Word Counter Pro

Analytics Dashboard CLI ⭐⭐⭐⭐
Highlights: Frequency tables, top-N words, multi-file, UTF-8.
🎮 Demo: Analyze any text → Top words table!

🔧 Run:

cd Task_6_word_count
python word_counter.py  # Enter file path

✨ Features: Avg length, char/word ratios, export-ready

Common Technologies

``` Core: Python 3.8+, OOP, Type Hints, PEP8 GUI: Tkinter (Tasks 1-2) CLI: ANSI Colors, Tables (Tasks 3-6) Data: JSON Persistence Web: requests, BeautifulSoup (Tasks 4-5) Analysis: collections.Counter (Task 6) ```

Project Structure

``` python_internship/ ├── Task_1_to_do_list/ # GUI To-Do ├── Task_2_number_game/ # GUI Game ├── Task_3_file_handling/ # CLI File Tool ├── Task_4_web_scraper/ # CLI Scraper ├── Task_5_currency_converter/ # CLI API ├── Task_6_word_count/ # CLI Analyzer └── README.md # This file ```

Learning Outcomes

  • Production CLI/GUI patterns
  • Error handling best practices
  • Data persistence & APIs
  • Modular Python architecture
  • Professional documentation

Future Improvements

  • Root `requirements.txt` & `Makefile`
  • Docker containers per task
  • Unit tests (pytest)
  • CI/CD (GitHub Actions)
  • Web dashboard for all tasks

License

MIT License - feel free to use, modify, and distribute.

Author

Devaprasath K
Python Internship Portfolio | 2024
LinkedIn | GitHub


Built with ❤️ for Python mastery. Run any task and explore! 🚀