Site-wide markup validator. Validate a whole web site on the W3C Markup Validator, from the command line, and generate a comprehensive report of all errors found.
This is the command-line version of markupvalidator.com
site_validator is a Ruby gem that can be installed on the usual way
gem install site_validator
Pass it a starting URL to be checked, and the filename where you want your report to be generated, like:
site_validator http://ryanair.com/sitemap.xml report.html
This will validate all the internal URLs found on the starting URL, up to a maximum of 250 URLs, and generate an HTML file with the full report.
You can pass site_validator an XML sitemap or the URL of a website; it will scrape it in search of URLs to validate.
By default, the site_validator gem will set a 20 seconds timeout for each individual request. If you want to set a different timeout, pass it as a third parameter like this:
site_validator http://ryanair.com/sitemap.xml report.html 60
Using an alternate validation server
By default, the site_validator gem will use the official W3C Validator server at validator.w3.org but you can use an alternate server if you want. To do this, define an environment variable on your machine, like:
ENV['W3C_MARKUP_VALIDATOR_URI'] = 'http://example.com/validator'
Follow this guide to know how to setup your own validation server: github.com/tlvince/w3c-validator-guide
This gem requires Ruby 1.9, and has been tested on Ruby 1.9.2-p0
This is a free, open source project with a MIT license. See the file MIT-LICENSE for details.