nulb


Namenulb JSON
Version 1.0.1 PyPI version JSON
download
home_pagehttps://github.com/jshakes/no-url-left-behind
SummaryA tool for detecting 404 errors during website migrations by checking URLs from sitemap.xml files
upload_time2025-08-11 12:19:26
maintainerNone
docs_urlNone
authorJames Shakespeare
requires_python>=3.7
licenseNone
keywords url migration sitemap 404 website migration checker
VCS
bugtrack_url
requirements requests beautifulsoup4 lxml
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # No URL Left Behind (nulb)

A tool for detecting 404 errors during website migrations by checking URLs from sitemap.xml files against a new domain.

## Installation

```bash
pip install nulb
```

## Usage

```bash
nulb <sitemap_url> <old_root> <new_domain>
```

### Examples

Basic check:
```bash
nulb https://oldsite.com/sitemap.xml https://oldsite.com https://newsite.com
```

With custom delay and output file:
```bash
nulb https://example.com/sitemap.xml https://example.com https://new-example.com --delay 0.5 --output report.txt
```

Check only for 404s (skip meta comparison):
```bash
nulb https://mysite.com/sitemap.xml https://mysite.com https://newsite.com --skip-meta
```

Fast check with output file:
```bash
nulb https://blog.com/sitemap.xml https://blog.com https://newblog.com --delay 0 --output migration-check.txt
```

### Options

- `--delay SECONDS` - Delay between requests (default: 0.1)
- `--output FILE` - Save report to file
- `--skip-meta` - Check 404s only, skip meta comparison

## Requirements

- Python 3.7+

## License

MIT

## Author

[James Shakespeare](https://jshakespeare.com) (j@jshakespeare.com)

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/jshakes/no-url-left-behind",
    "name": "nulb",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.7",
    "maintainer_email": null,
    "keywords": "url migration sitemap 404 website migration checker",
    "author": "James Shakespeare",
    "author_email": "j@jshakespeare.com",
    "download_url": "https://files.pythonhosted.org/packages/d7/32/9b5d41245fd0b09932477329d092b6cb17e3f9c3105f65d11d489e999d89/nulb-1.0.1.tar.gz",
    "platform": null,
    "description": "# No URL Left Behind (nulb)\n\nA tool for detecting 404 errors during website migrations by checking URLs from sitemap.xml files against a new domain.\n\n## Installation\n\n```bash\npip install nulb\n```\n\n## Usage\n\n```bash\nnulb <sitemap_url> <old_root> <new_domain>\n```\n\n### Examples\n\nBasic check:\n```bash\nnulb https://oldsite.com/sitemap.xml https://oldsite.com https://newsite.com\n```\n\nWith custom delay and output file:\n```bash\nnulb https://example.com/sitemap.xml https://example.com https://new-example.com --delay 0.5 --output report.txt\n```\n\nCheck only for 404s (skip meta comparison):\n```bash\nnulb https://mysite.com/sitemap.xml https://mysite.com https://newsite.com --skip-meta\n```\n\nFast check with output file:\n```bash\nnulb https://blog.com/sitemap.xml https://blog.com https://newblog.com --delay 0 --output migration-check.txt\n```\n\n### Options\n\n- `--delay SECONDS` - Delay between requests (default: 0.1)\n- `--output FILE` - Save report to file\n- `--skip-meta` - Check 404s only, skip meta comparison\n\n## Requirements\n\n- Python 3.7+\n\n## License\n\nMIT\n\n## Author\n\n[James Shakespeare](https://jshakespeare.com) (j@jshakespeare.com)\n",
    "bugtrack_url": null,
    "license": null,
    "summary": "A tool for detecting 404 errors during website migrations by checking URLs from sitemap.xml files",
    "version": "1.0.1",
    "project_urls": {
        "Bug Reports": "https://github.com/jshakes/no-url-left-behind/issues",
        "Homepage": "https://github.com/jshakes/no-url-left-behind",
        "Source": "https://github.com/jshakes/no-url-left-behind"
    },
    "split_keywords": [
        "url",
        "migration",
        "sitemap",
        "404",
        "website",
        "migration",
        "checker"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "d7329b5d41245fd0b09932477329d092b6cb17e3f9c3105f65d11d489e999d89",
                "md5": "0a307cd5cca7007d5bb5ceae7aa76d30",
                "sha256": "e0e35061bcaedc7a7382891229bad9f368a754090cbb9b3bd854b903bc136328"
            },
            "downloads": -1,
            "filename": "nulb-1.0.1.tar.gz",
            "has_sig": false,
            "md5_digest": "0a307cd5cca7007d5bb5ceae7aa76d30",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.7",
            "size": 11577,
            "upload_time": "2025-08-11T12:19:26",
            "upload_time_iso_8601": "2025-08-11T12:19:26.638596Z",
            "url": "https://files.pythonhosted.org/packages/d7/32/9b5d41245fd0b09932477329d092b6cb17e3f9c3105f65d11d489e999d89/nulb-1.0.1.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-08-11 12:19:26",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "jshakes",
    "github_project": "no-url-left-behind",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": false,
    "requirements": [
        {
            "name": "requests",
            "specs": [
                [
                    ">=",
                    "2.25.0"
                ]
            ]
        },
        {
            "name": "beautifulsoup4",
            "specs": [
                [
                    ">=",
                    "4.9.0"
                ]
            ]
        },
        {
            "name": "lxml",
            "specs": [
                [
                    ">=",
                    "4.6.0"
                ]
            ]
        }
    ],
    "lcname": "nulb"
}
        
Elapsed time: 2.01109s