Metadata-Version: 2.4
Name: nulb
Version: 1.0.1
Summary: A tool for detecting 404 errors during website migrations by checking URLs from sitemap.xml files
Home-page: https://github.com/jshakes/no-url-left-behind
Author: James Shakespeare
Author-email: j@jshakespeare.com
Project-URL: Bug Reports, https://github.com/jshakes/no-url-left-behind/issues
Project-URL: Source, https://github.com/jshakes/no-url-left-behind
Keywords: url migration sitemap 404 website migration checker
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: System Administrators
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Topic :: Internet :: WWW/HTTP
Classifier: Topic :: Software Development :: Testing
Classifier: Topic :: System :: Systems Administration
Requires-Python: >=3.7
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: requests>=2.25.0
Requires-Dist: beautifulsoup4>=4.9.0
Requires-Dist: lxml>=4.6.0
Dynamic: author
Dynamic: author-email
Dynamic: classifier
Dynamic: description
Dynamic: description-content-type
Dynamic: home-page
Dynamic: keywords
Dynamic: license-file
Dynamic: project-url
Dynamic: requires-dist
Dynamic: requires-python
Dynamic: summary

# 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)
