Python scripts and web tools for automating Excel, CSV, and web data tasks — cleaning, merging, analyzing, and reporting.
Drop a messy spreadsheet in. Get a clean, professional report out.
Try the apps instantly — no installation needed:
👉 Data Cleaner Pro — Upload messy CSV/Excel → get a clean formatted report
👉 Web Scraper Pro — Enter a URL → scrape data → download as Excel
👉 Multi-Page Scraper Pro — Scrape multiple pages automatically → download as Excel
Every script here solves a real business problem: messy data comes in, clean results go out — automatically, without touching the original files.
A full web application that cleans messy CSV and Excel files through a browser — no Python knowledge required.
🔗 Live demo: mahmoud-data-cleaner.streamlit.app
How to use:
- Upload one or multiple CSV or Excel files using the upload button
- Choose your mode — Clean Only or Clean + Summary Report
- Optionally sort the data by any column
- In Summary mode, pick the numeric column to analyze — totals, averages, and highest values are calculated automatically
- Optionally highlight any row with a custom color
- Click Download to get your clean, formatted Excel file
What it does:
- Removes duplicate rows automatically
- Fixes text casing and strips extra spaces across all columns
- Fills empty numeric cells with 0 and empty text cells with N/A
- Generates a Summary sheet with groupby analysis when requested
- Applies bold headers to all sheets
- Highlights any row in any color the user chooses
- Outputs a multi-sheet formatted Excel file ready to deliver to clients
Built with Streamlit — runs in any browser, no Python knowledge needed.
A full web application that scrapes any website and delivers the data as a clean Excel report.
🔗 Live demo: mahmoud-web-scraper.streamlit.app
How to use:
- Enter any website URL in the sidebar
- Choose Auto mode to detect tables automatically, or Manual mode to enter an HTML tag and CSS class
- Optionally sort the data and generate a summary report
- Click Download to get your scraped data as a formatted Excel file
What it does:
- Auto-detects HTML tables on any page
- Manual mode: scrape any element by tag and CSS class
- Cleans and formats all scraped data automatically
- Optional summary report with totals, averages, and highest values
- Applies bold headers and optional row highlighting
- Outputs a formatted Excel file ready to use
Built with Streamlit, requests, and BeautifulSoup.
A full web application that scrapes multiple pages automatically using a URL pattern.
🔗 Live demo: mahmoud-multi-scraper.streamlit.app
How to use:
- Enter a URL pattern using
{page}where the page number goes (e.g.https://example.com/page-{page}.html) - Set the number of pages to scrape
- Choose Auto or Manual scraping mode
- Click Download to get all scraped data combined into one Excel file
What it does:
- Loops through multiple pages automatically
- Combines all pages into one clean dataset
- Auto-detects tables or scrapes by tag and CSS class
- Optional summary report and row highlighting
- Outputs a formatted multi-sheet Excel file
Built with Streamlit, requests, and BeautifulSoup.
Takes a folder of raw CSV sales files and outputs a single clean Excel report.
- Reads all CSV files in the folder automatically — no manual file selection
- Removes duplicates, fixes text casing, strips extra spaces, fills empty cells
- Calculates total sales, average sale, and highest sale per salesperson
- Highlights the top salesperson row in green
- Outputs
final_report.xlsxwith bold headers and frozen top row - Never modifies the original CSV files
Cleans any messy CSV file automatically.
- Removes duplicate rows
- Fixes inconsistent text casing and strips extra spaces across all text columns
- Fills empty cells with "N/A"
- Reports exactly how many duplicates were removed and how many empty cells were filled
- Saves cleaned output to Excel without touching the original file
Merges multiple CSV files and generates a grouped sales summary report.
- Reads and merges all CSV files in the folder automatically
- Validates data before analysis
- Calculates total, average, and highest sale per salesperson using groupby
- Sorts results by total sales, highlights top salesperson in green
- Outputs a professional Excel report with bold headers
Scrapes product data across an entire site and outputs a price analysis report.
- Scrapes multiple pages automatically with respectful request delays
- Cleans and converts price data for analysis
- Sorts all products by price
- Outputs
price_report.xlsxwith bold headers and a Summary sheet: total items, average price, cheapest and most expensive item
Takes any messy Excel file and returns a clean version automatically.
- Removes duplicate rows
- Strips extra spaces from all text fields
- Fixes inconsistent text casing
- Fills empty cells with "N/A"
- Never overwrites the original file
Merges multiple Excel files from a folder into one master report.
- Automatically finds all
.xlsxfiles in the folder - Validates that each file has an "Amount" column before processing
- Dynamically detects column positions — works regardless of column order
- Sorts all rows by Amount, highest first
- Outputs
master_report.xlsxwith bold headers
Given an unseen messy Excel file with no instructions, cleaned and delivered a professional report in under 2 hours.
- Merged and deduplicated data automatically
- Cleaned text columns, handled numeric columns separately
- Generated groupby sales summary sorted by total
- Delivered professional Excel report with bold headers and highlighted top row
This script exists to demonstrate real delivery speed and quality under pressure — not just clean demo data.
Install dependencies:
pip install openpyxl pandas requests beautifulsoup4 streamlitRun the web apps locally:
python -m streamlit run portfolio/data_cleaner_app.py
python -m streamlit run portfolio/scraper_app.py
python -m streamlit run portfolio/multi_scraper_app.pyOr use the live versions — no installation needed:
👉 mahmoud-data-cleaner.streamlit.app
👉 mahmoud-web-scraper.streamlit.app
👉 mahmoud-multi-scraper.streamlit.app
Run any script from its folder:
python sales_report_generator.py
python pandas_report.py
python price_tracker.py
python cleaner.py
python merger.py- Python 3.x
- openpyxl
- pandas
- requests
- beautifulsoup4
- streamlit
I automate Excel and data workflows using Python — cleaning messy files, merging reports, and delivering professional output fast. Every script is documented, non-destructive, and built to handle real-world data, not just clean demos.
Available for work on Fiverr → fiverr.com/pymahmoud
Live demos:


