Skip to content

Instantly share code, notes, and snippets.

@drogus
Created April 28, 2009 13:03
Show Gist options
  • Save drogus/103132 to your computer and use it in GitHub Desktop.
Save drogus/103132 to your computer and use it in GitHub Desktop.
#!/usr/bin/env ruby
#
# Usage: pages_count.rb /path/to/docx_file.docx
require 'rubygems'
require 'zip/zip'
require 'zip/zipfilesystem'
require 'nokogiri'
# open zipfile from arguments
Zip::ZipFile.open(ARGV.first) do |zipfile|
# xml with properties
props_filename = 'docProps/app.xml'
if zipfile.file.file?(props_filename)
doc = Nokogiri::XML.parse( zipfile.file.read(props_filename) )
pages = doc.css("Properties > Pages").first
puts(pages.nil? ? 0 : pages.content)
end
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment