robots.txt with deliberately invalid syntax
A deliberately invalid robots.txt: a rule before any group, an empty product token, an absolute URL where a path belongs, whitespace before the colon, a non-numeric Crawl-delay, and a line with no colon at all. For testing that a parser degrades line-by-line instead of failing the whole file.
# robots.txt - deliberately invalid syntax (sample fixture)
Disallow: /orphan/
User-agent:
Disallow: https://www.example.com/absolute/
Allow : /spaced/
Crawl-delay: soon
Disallow /missing-colon/
User-agent: *
Disallow: /admin/
Specifications
- Seed
- 70400
- Site
- example.com (fictional)
- Format
- robots.txt (RFC 9309)
- Malformed Lines
- 6
- Valid Rules
- 1
- Deliberately Invalid
- true
Testing contract
Expected to recover- Scenario
- Parse a file in which six of its eight directive lines are malformed.
- Expected result
- Every malformed line is skipped without raising; the only rule in force is `Disallow: /admin/` for `*`, and the orphan rule before the first User-agent is discarded rather than applied globally.
What is a .txt file?
TXT is a plain-text file containing unformatted character data with no styling or structure beyond line breaks. Its interpretation depends on character encoding, most commonly UTF-8, and on line-ending convention. It is the most universal and portable text container.
How to use this file
Use an example TXT to test encoding detection, line-ending (LF versus CRLF) handling, and any tool that reads or streams raw text input.
How to use this file for testing
“robots.txt with deliberately invalid syntax” is a deterministic Novus Examples fixture for Web assets, Web scraping, Editor testing. Favicons, web app manifests, service workers, robots and sitemap files, Open Graph images, and .well-known resources — for testing web tooling, crawlers, PWA installers, and asset pipelines.
Documented properties for this file: seed 70400 · robots.txt (RFC 9309). Compare results against paired or grouped companions on this page when present (clean↔damaged, searchable↔scanned, or format twins) so scores stay reproducible across runs.
Download the file once, keep the path stable in CI or local scripts, and treat the spec table as the contract: dimensions, seeds, field lists, and roles are intentional. Corrupt or invalid samples are labelled as such — expect parsers to fail loudly rather than silently accept them.
Web-platform fixtures are standards-compliant samples against fictional example.com data. Test crawlers, PWA installers and manifest validators, favicon/icon pipelines, service-worker registration, or .well-known parsers against the documented structure.
Related files
- txtPlain-text sitemap (one URL per line)The plain-text sitemap format the sitemaps.org protocol also accepts: one absolute URL per line, no markup, UTF-8 encoded. For testing that a crawler supports the text form as well as XML.

- xmlSitemap index over three sitemapsA sitemap index listing three child sitemaps, one dated with a plain date, one with a full W3C datetime, and one with no lastmod at all. Two of the children ship alongside it, so a crawler can be walked from index to URL.

- xmlSitemap shard 1 (core pages)The first child of the sitemap index: six core URLs with a deliberately uneven mix of lastmod, changefreq and priority, including one entry that carries nothing but a loc. For testing that optional sitemap fields really are optional.

- xmlSitemap shard 2 (blog and legal)The second child of the sitemap index: six URLs dated with W3C datetimes in two different timezone offsets, including a changefreq of never and a priority of 0.1. For testing datetime normalisation and priority ordering.

- xmlSitemap with a deliberately invalid hreflang clusterA deliberately invalid hreflang cluster: an `en-UK` region that does not exist, an underscore locale, a German page that never links back, a Spanish self-reference dropped to http, and no x-default anywhere. For testing that an international audit reports each defect rather than the first one.

- xmlSitemap with a reciprocal hreflang clusterA sitemap whose three URLs form a complete hreflang cluster: every page lists every locale including itself and a shared x-default. This is the shape an international audit should pass, and the reference twin of the broken cluster.

Generated by generation/web_p7.py. Free for any use, no attribution required — license.