tfq0seo


Nametfq0seo JSON
Version 2.2.0 PyPI version JSON
download
home_pagehttps://github.com/tfq0/tfq0seo
SummaryModern SEO analysis and optimization toolkit with advanced reporting
upload_time2025-10-06 23:10:26
maintainerNone
docs_urlNone
authortfq0
requires_python>=3.8
licenseMIT
keywords seo analysis optimization web content meta tags technical seo reporting analytics
VCS
bugtrack_url
requirements aiohttp beautifulsoup4 requests rich click jinja2 validators urllib3 aiofiles textstat jsonschema httpx user-agents packaging
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # tfq0seo - Professional SEO Analysis Toolkit

![Version](https://img.shields.io/badge/version-2.1.3-blue.svg)
![License](https://img.shields.io/badge/license-MIT-green.svg)
![Python](https://img.shields.io/badge/python-3.7+-blue.svg)

**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

```bash
pip install tfq0seo
```

## 🎯 Quick Start

### Basic Usage

```bash
# 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

```bash
# 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
```bash
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
```bash
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
```bash
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
```bash
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
```bash
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
```bash
tfq0seo crawl https://yoursite.com --depth 5 --max-pages 1000 --format html --comprehensive
```

### 2. Competitive Analysis
```bash
tfq0seo analyze https://yoursite.com --competitors "https://competitor1.com,https://competitor2.com" --comprehensive
```

### 3. Batch URL Analysis
```bash
# Create urls.txt with one URL per line
tfq0seo batch urls.txt --format xlsx --output batch_analysis.xlsx
```

### 4. Technical SEO Audit
```bash
tfq0seo analyze https://yoursite.com --depth complete --format html --output technical_audit.html
```

### 5. Sitemap Analysis
```bash
tfq0seo sitemap https://yoursite.com/sitemap.xml --analyze --format html
```

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/tfq0/tfq0seo",
    "name": "tfq0seo",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.8",
    "maintainer_email": null,
    "keywords": "seo, analysis, optimization, web, content, meta tags, technical seo, reporting, analytics",
    "author": "tfq0",
    "author_email": null,
    "download_url": "https://files.pythonhosted.org/packages/ba/f2/1534be3a0b6627aa46fe7c7e3e55014d6f9026637c06463d31cfbee5b765/tfq0seo-2.2.0.tar.gz",
    "platform": null,
    "description": "# tfq0seo - Professional SEO Analysis Toolkit\n\n![Version](https://img.shields.io/badge/version-2.1.3-blue.svg)\n![License](https://img.shields.io/badge/license-MIT-green.svg)\n![Python](https://img.shields.io/badge/python-3.7+-blue.svg)\n\n**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.\n\n## \ud83d\ude80 Features\n\n### Site Crawling\n- Full website crawling with configurable depth (1-10 levels)\n- Concurrent processing (1-50 simultaneous requests)\n- Respects robots.txt and sitemap.xml\n- Real-time progress tracking with rich console output\n- Configurable delays to avoid overwhelming servers\n\n### SEO Analysis\n- **Meta tags analysis**: Title, description, Open Graph, canonical URLs\n- **Content analysis**: Readability, keyword density, content length, structure\n- **Technical SEO**: Mobile-friendliness, HTTPS, security headers, schema markup\n- **Performance metrics**: Load times, Core Web Vitals, resource optimization\n- **Link analysis**: Internal/external/broken links, anchor text quality\n- **Image optimization**: Alt text, compression, formats, dimensions\n\n### Reporting & Export\n- Multiple export formats: JSON, CSV, XLSX, HTML\n- Professional reports with insights and recommendations\n- Competitive analysis with side-by-side comparisons\n- Action plans with priority levels and impact estimates\n\n##  Installation\n\n```bash\npip install tfq0seo\n```\n\n## \ud83c\udfaf Quick Start\n\n### Basic Usage\n\n```bash\n# Crawl entire website\ntfq0seo crawl https://example.com\n\n# Analyze single URL\ntfq0seo analyze https://example.com\n\n# Advanced crawl with options\ntfq0seo crawl https://example.com --depth 5 --max-pages 1000 --concurrent 20 --format xlsx\n\n# Batch analysis from file\ntfq0seo batch urls.txt --format html --output batch_report.html\n\n# Sitemap analysis\ntfq0seo sitemap https://example.com/sitemap.xml --analyze\n```\n\n### Export Results\n\n```bash\n# Export to different formats\ntfq0seo export --format csv --output results.csv\ntfq0seo export --format xlsx --output report.xlsx\ntfq0seo export --format html --output report.html\n```\n\n## \ud83d\udd27 CLI Commands & Options\n\n### `crawl` - Website Crawling\n```bash\ntfq0seo crawl [URL] [OPTIONS]\n```\n- `--depth, -d`: Crawl depth (1-10, default: 3)\n- `--max-pages, -m`: Maximum pages to crawl (default: 500)\n- `--concurrent, -c`: Concurrent requests (1-50, default: 10)\n- `--delay`: Delay between requests in seconds (default: 0.5)\n- `--format, -f`: Output format (json|csv|xlsx|html, default: json)\n- `--output, -o`: Output file path\n- `--exclude`: Path patterns to exclude (multiple allowed)\n- `--no-robots`: Ignore robots.txt\n- `--include-external`: Include external links\n- `--user-agent`: Custom user agent\n- `--config, -C`: Configuration file (JSON/YAML)\n- `--resume`: Resume from previous crawl state\n- `--dry-run`: Show what would be crawled without actually crawling\n- `--sitemap-only`: Only crawl URLs from sitemap.xml\n\n### `analyze` - Single URL Analysis\n```bash\ntfq0seo analyze [URL] [OPTIONS]\n```\n- `--comprehensive, -c`: Run all analysis modules\n- `--target-keyword, -k`: Primary keyword for optimization\n- `--competitors`: Comma-separated competitor URLs\n- `--depth`: Analysis depth (basic|advanced|complete, default: advanced)\n- `--format, -f`: Output format (json|csv|xlsx|html, default: json)\n- `--output, -o`: Output file path\n\n### `batch` - Batch URL Analysis\n```bash\ntfq0seo batch [URLS_FILE] [OPTIONS]\n```\n- `--format, -f`: Output format (json|csv|xlsx|html, default: json)\n- `--output, -o`: Output file path\n- `--concurrent, -c`: Concurrent analyses (1-20, default: 5)\n\n### `sitemap` - Sitemap Analysis\n```bash\ntfq0seo sitemap [SITEMAP_URL] [OPTIONS]\n```\n- `--format, -f`: Output format (json|csv|txt, default: json)\n- `--output, -o`: Output file path\n- `--analyze`: Analyze URLs from sitemap\n\n### `export` - Export Results\n```bash\ntfq0seo export [OPTIONS]\n```\n- `--format, -f`: Output format (json|csv|xlsx|html) **required**\n- `--output, -o`: Output file path **required**\n- `--input, -i`: Input file (if converting formats)\n\n### Global Options\n- `--verbose, -v`: Verbose output\n- `--quiet, -q`: Quiet mode (errors only)\n- `--version`: Show version information\n\n## \ud83d\udcca SEO Metrics & Scoring\n\n### Content Guidelines\n- **Title Length**: 30-60 characters (optimal)\n- **Meta Description**: 120-160 characters\n- **Minimum Content**: 300 words\n- **Keyword Density**: Maximum 3%\n- **Readability**: Flesch score \u2265 60, Gunning Fog \u2264 12\n\n### Technical Requirements\n- **Page Load Time**: < 3 seconds\n- **Mobile-Friendly**: Responsive design required\n- **HTTPS**: SSL certificate required\n- **Structured Data**: Valid schema.org markup\n\n## \ud83d\udd0d Use Cases\n\n### 1. Complete Site Audit\n```bash\ntfq0seo crawl https://yoursite.com --depth 5 --max-pages 1000 --format html --comprehensive\n```\n\n### 2. Competitive Analysis\n```bash\ntfq0seo analyze https://yoursite.com --competitors \"https://competitor1.com,https://competitor2.com\" --comprehensive\n```\n\n### 3. Batch URL Analysis\n```bash\n# Create urls.txt with one URL per line\ntfq0seo batch urls.txt --format xlsx --output batch_analysis.xlsx\n```\n\n### 4. Technical SEO Audit\n```bash\ntfq0seo analyze https://yoursite.com --depth complete --format html --output technical_audit.html\n```\n\n### 5. Sitemap Analysis\n```bash\ntfq0seo sitemap https://yoursite.com/sitemap.xml --analyze --format html\n```\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "Modern SEO analysis and optimization toolkit with advanced reporting",
    "version": "2.2.0",
    "project_urls": {
        "Bug Tracker": "https://github.com/tfq0/tfq0seo/issues",
        "Documentation": "https://github.com/tfq0/tfq0seo#readme",
        "Homepage": "https://github.com/tfq0/tfq0seo",
        "Repository": "https://github.com/tfq0/tfq0seo.git"
    },
    "split_keywords": [
        "seo",
        " analysis",
        " optimization",
        " web",
        " content",
        " meta tags",
        " technical seo",
        " reporting",
        " analytics"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "2d7f45a43d77397ba17900a1cb2ca111004b63c7f65d07b24fa4aa43be52a57e",
                "md5": "46c07004beb9a6f1a45d3acd0b7ef365",
                "sha256": "8b70cff06b6abbe3795b2fc2798465fc5fafda80ea18ff446b0c4169a830476a"
            },
            "downloads": -1,
            "filename": "tfq0seo-2.2.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "46c07004beb9a6f1a45d3acd0b7ef365",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.8",
            "size": 90474,
            "upload_time": "2025-10-06T23:10:24",
            "upload_time_iso_8601": "2025-10-06T23:10:24.921015Z",
            "url": "https://files.pythonhosted.org/packages/2d/7f/45a43d77397ba17900a1cb2ca111004b63c7f65d07b24fa4aa43be52a57e/tfq0seo-2.2.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "baf21534be3a0b6627aa46fe7c7e3e55014d6f9026637c06463d31cfbee5b765",
                "md5": "1c8fbe32ed591d475d6812b8ee89816e",
                "sha256": "b570ad9f9081a92e77c6c42be8cb0cdd6356baf015963e790ba7147d33e3222a"
            },
            "downloads": -1,
            "filename": "tfq0seo-2.2.0.tar.gz",
            "has_sig": false,
            "md5_digest": "1c8fbe32ed591d475d6812b8ee89816e",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.8",
            "size": 84642,
            "upload_time": "2025-10-06T23:10:26",
            "upload_time_iso_8601": "2025-10-06T23:10:26.412741Z",
            "url": "https://files.pythonhosted.org/packages/ba/f2/1534be3a0b6627aa46fe7c7e3e55014d6f9026637c06463d31cfbee5b765/tfq0seo-2.2.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-10-06 23:10:26",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "tfq0",
    "github_project": "tfq0seo",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "requirements": [
        {
            "name": "aiohttp",
            "specs": [
                [
                    ">=",
                    "3.8.0"
                ]
            ]
        },
        {
            "name": "beautifulsoup4",
            "specs": [
                [
                    ">=",
                    "4.11.0"
                ]
            ]
        },
        {
            "name": "requests",
            "specs": [
                [
                    ">=",
                    "2.28.0"
                ]
            ]
        },
        {
            "name": "rich",
            "specs": [
                [
                    ">=",
                    "12.6.0"
                ]
            ]
        },
        {
            "name": "click",
            "specs": [
                [
                    ">=",
                    "8.1.0"
                ]
            ]
        },
        {
            "name": "jinja2",
            "specs": [
                [
                    ">=",
                    "3.1.0"
                ]
            ]
        },
        {
            "name": "validators",
            "specs": [
                [
                    ">=",
                    "0.20.0"
                ]
            ]
        },
        {
            "name": "urllib3",
            "specs": [
                [
                    ">=",
                    "1.26.0"
                ]
            ]
        },
        {
            "name": "aiofiles",
            "specs": [
                [
                    ">=",
                    "23.0.0"
                ]
            ]
        },
        {
            "name": "textstat",
            "specs": [
                [
                    ">=",
                    "0.7.3"
                ]
            ]
        },
        {
            "name": "jsonschema",
            "specs": [
                [
                    ">=",
                    "4.17.0"
                ]
            ]
        },
        {
            "name": "httpx",
            "specs": [
                [
                    ">=",
                    "0.24.0"
                ]
            ]
        },
        {
            "name": "user-agents",
            "specs": [
                [
                    ">=",
                    "2.2.0"
                ]
            ]
        },
        {
            "name": "packaging",
            "specs": [
                [
                    ">=",
                    "21.0"
                ]
            ]
        }
    ],
    "lcname": "tfq0seo"
}
        
Elapsed time: 1.52099s