Skip to content

mafanding/ScraplingWeb

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ScraplingWeb

A zero-storage web link scraper with a clean web UI. Input a URL, extract all links, export as CSV.

Built with Scrapling, FastAPI, and vanilla JS. Runs as a single Docker container.

Features

  • Extract all <a> links from any webpage
  • Displays link title and absolute URL in a table
  • Optional proxy support
  • One-click CSV export
  • No database, no storage — stateless by design

Quick Start

Local

pip install -r requirements.txt
uvicorn app.main:app --reload --port 8082

Open http://localhost:8082.

Docker

docker compose up --build

Or with plain Docker:

docker build -t scraplingweb .
docker run -p 8082:8082 scraplingweb

API

POST /scrape

Request:

{ "url": "https://example.com", "proxy": "http://user:pass@host:port" }

proxy is optional.

Success response:

{ "status": "ok", "count": 42, "links": [{"title": "...", "url": "..."}] }

Error response:

{ "status": "error", "message": "..." }

Project Structure

ScraplingWeb/
├── app/
│   ├── main.py          # FastAPI routes
│   ├── scraper.py       # Scrapling link extraction
│   └── static/
│       ├── index.html
│       ├── style.css
│       └── app.js
├── requirements.txt
├── Dockerfile
└── docker-compose.yml

About

Scrapling with webui run in docker

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages