Modern SEO analysis and optimization toolkit with advanced reporting
Project description
tfq0seo - Professional SEO Analysis Toolkit
tfq0seo is a comprehensive, open-source SEO analysis and site crawling toolkit that provides professional-grade website auditing capabilities. It's a powerful alternative to commercial tools like Screaming Frog SEO Spider, but fully open-source and extensible.
🚀 Features
Site Crawling
- Full website crawling with configurable depth (1-10 levels)
- Concurrent processing (1-50 simultaneous requests)
- Respects robots.txt and sitemap.xml
- Real-time progress tracking with rich console output
- Configurable delays to avoid overwhelming servers
SEO Analysis
- Meta tags analysis: Title, description, Open Graph, canonical URLs
- Content analysis: Readability, keyword density, content length, structure
- Technical SEO: Mobile-friendliness, HTTPS, security headers, schema markup
- Performance metrics: Load times, Core Web Vitals, resource optimization
- Link analysis: Internal/external/broken links, anchor text quality
- Image optimization: Alt text, compression, formats, dimensions
Reporting & Export
- Multiple export formats: JSON, CSV, XLSX, HTML
- Professional reports with insights and recommendations
- Competitive analysis with side-by-side comparisons
- Action plans with priority levels and impact estimates
Installation
pip install tfq0seo
🎯 Quick Start
Basic Usage
# Crawl entire website
tfq0seo crawl https://example.com
# Analyze single URL
tfq0seo analyze https://example.com
# Advanced crawl with options
tfq0seo crawl https://example.com --depth 5 --max-pages 1000 --concurrent 20 --format xlsx
# Batch analysis from file
tfq0seo batch urls.txt --format html --output batch_report.html
# Sitemap analysis
tfq0seo sitemap https://example.com/sitemap.xml --analyze
Export Results
# Export to different formats
tfq0seo export --format csv --output results.csv
tfq0seo export --format xlsx --output report.xlsx
tfq0seo export --format html --output report.html
🔧 CLI Commands & Options
crawl - Website Crawling
tfq0seo crawl [URL] [OPTIONS]
--depth, -d: Crawl depth (1-10, default: 3)--max-pages, -m: Maximum pages to crawl (default: 500)--concurrent, -c: Concurrent requests (1-50, default: 10)--delay: Delay between requests in seconds (default: 0.5)--format, -f: Output format (json|csv|xlsx|html, default: json)--output, -o: Output file path--exclude: Path patterns to exclude (multiple allowed)--no-robots: Ignore robots.txt--include-external: Include external links--user-agent: Custom user agent--config, -C: Configuration file (JSON/YAML)--resume: Resume from previous crawl state--dry-run: Show what would be crawled without actually crawling--sitemap-only: Only crawl URLs from sitemap.xml
analyze - Single URL Analysis
tfq0seo analyze [URL] [OPTIONS]
--comprehensive, -c: Run all analysis modules--target-keyword, -k: Primary keyword for optimization--competitors: Comma-separated competitor URLs--depth: Analysis depth (basic|advanced|complete, default: advanced)--format, -f: Output format (json|csv|xlsx|html, default: json)--output, -o: Output file path
batch - Batch URL Analysis
tfq0seo batch [URLS_FILE] [OPTIONS]
--format, -f: Output format (json|csv|xlsx|html, default: json)--output, -o: Output file path--concurrent, -c: Concurrent analyses (1-20, default: 5)
sitemap - Sitemap Analysis
tfq0seo sitemap [SITEMAP_URL] [OPTIONS]
--format, -f: Output format (json|csv|txt, default: json)--output, -o: Output file path--analyze: Analyze URLs from sitemap
export - Export Results
tfq0seo export [OPTIONS]
--format, -f: Output format (json|csv|xlsx|html) required--output, -o: Output file path required--input, -i: Input file (if converting formats)
Global Options
--verbose, -v: Verbose output--quiet, -q: Quiet mode (errors only)--version: Show version information
📊 SEO Metrics & Scoring
Content Guidelines
- Title Length: 30-60 characters (optimal)
- Meta Description: 120-160 characters
- Minimum Content: 300 words
- Keyword Density: Maximum 3%
- Readability: Flesch score ≥ 60, Gunning Fog ≤ 12
Technical Requirements
- Page Load Time: < 3 seconds
- Mobile-Friendly: Responsive design required
- HTTPS: SSL certificate required
- Structured Data: Valid schema.org markup
🔍 Use Cases
1. Complete Site Audit
tfq0seo crawl https://yoursite.com --depth 5 --max-pages 1000 --format html --comprehensive
2. Competitive Analysis
tfq0seo analyze https://yoursite.com --competitors "https://competitor1.com,https://competitor2.com" --comprehensive
3. Batch URL Analysis
# Create urls.txt with one URL per line
tfq0seo batch urls.txt --format xlsx --output batch_analysis.xlsx
4. Technical SEO Audit
tfq0seo analyze https://yoursite.com --depth complete --format html --output technical_audit.html
5. Sitemap Analysis
tfq0seo sitemap https://yoursite.com/sitemap.xml --analyze --format html
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file tfq0seo-2.1.3.tar.gz.
File metadata
- Download URL: tfq0seo-2.1.3.tar.gz
- Upload date:
- Size: 74.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1dc3c41c0203e5edb6a2072efdcd3b90b7cc7d5295f0c4c14ec3a8030df73c61
|
|
| MD5 |
1546f0341c376beecb530bc3e778e9fb
|
|
| BLAKE2b-256 |
d448dfbe14f76b5f26a08257fc226688138f08215a8202daca0cb2db616a327c
|
Provenance
The following attestation bundles were made for tfq0seo-2.1.3.tar.gz:
Publisher:
tfq0seo-publish.yml on TFQ0/tfq0seo
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
tfq0seo-2.1.3.tar.gz -
Subject digest:
1dc3c41c0203e5edb6a2072efdcd3b90b7cc7d5295f0c4c14ec3a8030df73c61 - Sigstore transparency entry: 264584611
- Sigstore integration time:
-
Permalink:
TFQ0/tfq0seo@fb8dca0ca37eb36f46d1b893fdeefff1e0dc8cca -
Branch / Tag:
refs/tags/v2.1.3 - Owner: https://github.com/TFQ0
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
tfq0seo-publish.yml@fb8dca0ca37eb36f46d1b893fdeefff1e0dc8cca -
Trigger Event:
push
-
Statement type:
File details
Details for the file tfq0seo-2.1.3-py3-none-any.whl.
File metadata
- Download URL: tfq0seo-2.1.3-py3-none-any.whl
- Upload date:
- Size: 78.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d1bb7cd9bd21e0edce9e9239f3a3a3b989c69482a71074d526d317e2f6e36eaf
|
|
| MD5 |
29733cb5bfaf38b95d4d9aab9cbd9e54
|
|
| BLAKE2b-256 |
e354ac626e02e737b5db65003f5af68e3539b335266222129f3b79157d0fa044
|
Provenance
The following attestation bundles were made for tfq0seo-2.1.3-py3-none-any.whl:
Publisher:
tfq0seo-publish.yml on TFQ0/tfq0seo
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
tfq0seo-2.1.3-py3-none-any.whl -
Subject digest:
d1bb7cd9bd21e0edce9e9239f3a3a3b989c69482a71074d526d317e2f6e36eaf - Sigstore transparency entry: 264584613
- Sigstore integration time:
-
Permalink:
TFQ0/tfq0seo@fb8dca0ca37eb36f46d1b893fdeefff1e0dc8cca -
Branch / Tag:
refs/tags/v2.1.3 - Owner: https://github.com/TFQ0
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
tfq0seo-publish.yml@fb8dca0ca37eb36f46d1b893fdeefff1e0dc8cca -
Trigger Event:
push
-
Statement type: