A web application and command-line tool for extracting, validating, and categorizing domain names from various input formats.
- Extract domains from plain text, HTML, and Markdown inputs
- Validate and categorize extracted domains
- User authentication and authorization with admin roles
- Bulk import of domains from CSV files with email notifications
- Search functionality for stored domains
- Export domains in CSV, JSON, and Excel formats
- RESTful API for programmatic access with rate limiting
- Responsive web interface
- Command-line interface (CLI) for quick domain operations
- Data visualization for domain statistics
-
Clone the repository:
git clone https://github.com/yourusername/domain-extractor.git cd domain-extractor
-
Run the initialization script:
chmod +x init.sh ./init.sh
This script will:
- Create and activate a virtual environment
- Install required dependencies
- Initialize the database
- Create a git_update.sh script for easy version management
-
Activate the virtual environment:
source venv/bin/activate
-
Run the application:
python app.py
-
Access the application in your web browser at
http://localhost:5000
-
Log in using your credentials
-
Use the web interface to extract, search, and manage domains
The CLI provides quick access to domain operations:
-
Extract domains from text:
python cli.py extract "Visit example.com and test.org"
-
Validate a single domain:
python cli.py validate example.com
-
List all domains in the database:
python cli.py list_domains
The API endpoint is available at /api/domains
. You need to be authenticated to access the API. The API is rate-limited to 100 requests per day.
Example API request: