Ek complete, modular web scraping framework — core/ folder me saare modules alag-alag, professional hacker-style boot sequence + animated banner ke saath, aur 18 built-in features.
v2.0 fixes: lxml dependency hata di gayi (kabhi use hi nahi ho rahi thi, aur Termux pe compile fail karke pura install hi tod deti thi). Banner ab pure ASCII hai — kisi bhi Termux font pe sahi render hoga. Startup pe ek real "hacker tool" boot checklist bhi hai.
KALI LINUX interface

webscraper_pro/
├── main.py # Entry point — banner, menu, sab kuch wire karta hai
├── requirements.txt
├── README.md
└── core/ # Sab logic yaha hai
├── __init__.py
├── config.py # Settings (Config dataclass)
├── logger.py # Colored logging
├── fetcher.py # HTTP requests, retries, robots.txt check
├── extractors.py # 13 extraction functions
├── crawler.py # Multi-page crawl, sitemap, broken-link check
├── downloader.py # Image/file downloader
├── exporter.py # JSON/CSV/TXT/XML export
└── ui.py # Banner, matrix animation, spinner, progress bar
pkg update && pkg upgrade -y
pkg install python -y
pkg install git -y
git clone https://github.com/Darkboy-creater/Web_Scraper_Pro.git
cd Web_Scraper_Pro
ls
pip install -r requirements.txtSirf 2 lightweight dependencies (requests, beautifulsoup4) — koi compile-heavy package nahi, install 10-15 second me ho jayega.
python start.pyLaunch hote hi:
- Ek module boot checklist chalti hai (
[OK] Loading core.fetchertype) - Fir ek short ASCII matrix-rain animation
- Fir professional boxed banner
- Fir grouped menu (18 features, 4 categories me)
- Page Info — title, meta description, H1 tags, status code, language
- Extract by CSS Selector — koi bhi selector + optional attribute (href, src, etc.)
- Extract Structured Data — multi-field records (e.g. product cards: title+price+image)
- Extract All Meta Tags — full meta tag dump
- Extract Tables → CSV — HTML tables ko seedha CSV me convert
- Extract Forms — form action, method, aur saare input fields
- Keyword Frequency Analysis — page ke top keywords (stopwords hata ke)
- Extract All Links — internal/external filter ke saath
- Extract Social Media Links — Facebook, Instagram, Twitter/X, LinkedIn, YouTube, etc.
- List All Images — saari image URLs
- Download Images — progress bar ke saath bulk download
- Download Files by Extension — pdf, docx, zip, etc.
- Extract Emails — regex-based email finder
- Extract Phone Numbers — pattern-based (verify manually, false positives possible)
- Crawl Multiple Pages — BFS crawl with depth limit
- Generate Sitemap (XML) — pura site crawl karke
sitemap.xmlbanata hai - Broken Link Checker — saare links ka status code check (404, 500, etc.)
- Full Page Report — sab kuch ek saath run karke ek consolidated JSON report
Har feature ka output output/ folder me save hota hai.
| Module | Kaam |
|---|---|
config.py |
Timeout, retries, delay, User-Agent rotation, proxy, animations toggle |
fetcher.py |
Fetcher class — retry+backoff, robots.txt respect, throttling |
extractors.py |
Saari extraction logic — 13 standalone functions |
crawler.py |
BFS crawl, sitemap generation, broken-link checker |
downloader.py |
Bulk image/file download with progress callback |
exporter.py |
JSON / CSV / TXT / XML sitemap save karna |
ui.py |
Colors, matrix intro, typewriter banner, spinner, progress bar |
logger.py |
Colored console logging |
from core import Config, Fetcher, extractors, exporter
cfg = Config(delay_between_requests=1.0)
fx = Fetcher(cfg)
soup = fx.fetch_soup("https://example.com")
titles = extractors.extract_by_selector(soup, "h2.title")
exporter.save_json(titles, "output/titles.json")
fx.close()| Field | Default | Description |
|---|---|---|
timeout |
15 | Request timeout (s) |
max_retries |
3 | Retry attempts |
retry_backoff |
1.5 | Backoff multiplier |
delay_between_requests |
1.0 | Politeness delay |
respect_robots_txt |
True | Robots.txt honor karna |
rotate_user_agent |
True | Random UA per session |
animations |
True | Matrix intro + typewriter banner on/off |
proxies |
None | {"https": "http://ip:port"} |
Animations band karne ke liye: Config(animations=False).
- Kisi bhi site ka
robots.txtaur Terms of Service respect karo. delay_between_requestskabhi 0 mat rakho.- Ye framework sirf static HTML parse karta hai — JS-heavy (React/Vue SPA) sites ke liye kaam nahi karega, kyunki Termux me headless browser chalana heavy hai.
- Bina permission ke private/personal data scrape mat karo.
Happy hacking! 🕶️🐍
