Yomu alternatives and similar gems
Based on the "Spreadsheets and Documents" category
* Code Quality Rankings and insights are calculated and provided by Lumnify.
They vary from L1 to L5 with "L5" being the highest. Visit our partner's website for more details.
Do you think we are missing an alternative of Yomu or a related project?
Here are some of the formats supported:
- Microsoft Office OLE 2 and Office Open XML Formats (.doc, .docx, .xls, .xlsx, .ppt, .pptx)
- OpenOffice.org OpenDocument Formats (.odt, .ods, .odp)
- Apple iWorks Formats
- Rich Text Format (.rtf)
- Portable Document Format (.pdf)
For the complete list of supported formats, please visit the Apache Tika Supported Document Formats page.
Text, metadata and MIME type information can be extracted by calling
require 'yomu' data = File.read 'sample.pages' text = Yomu.read :text, data metadata = Yomu.read :metadata, data mimetype = Yomu.read :mimetype, data
Reading text from a given filename
Create a new instance of Yomu and pass a filename.
yomu = Yomu.new 'sample.pages' text = yomu.text
Reading text from a given URL
This is useful for reading remote files, like documents hosted on Amazon S3.
yomu = Yomu.new 'http://svn.apache.org/repos/asf/poi/trunk/test-data/document/sample.docx' text = yomu.text
Reading text from a stream
Yomu can also read from a stream or any object that responds to
read, including file uploads from Ruby on Rails or Sinatra.
post '/:name/:filename' do yomu = Yomu.new params[:data][:tempfile] yomu.text end
Metadata is returned as a hash.
yomu = Yomu.new 'sample.pages' yomu.metadata['Content-Type'] #=> "application/vnd.apple.pages"
Reading MIME types
MIME type is returned as a MIME::Type object.
yomu = Yomu.new 'sample.docx' yomu.mimetype.content_type #=> "application/vnd.openxmlformats-officedocument.wordprocessingml.document" yomu.mimetype.extensions #=> ['docx']
Installation and Dependencies
Yomu packages the Apache Tika application jar and requires a working JRE for it to work.
Add this line to your application's Gemfile:
And then execute:
Or install it yourself as:
$ gem install yomu
- Fork it
- Create your feature branch (
git checkout -b my-new-feature)
- Create tests and make them pass (
- Commit your changes (
git commit -am 'Added some feature')
- Push to the branch (
git push origin my-new-feature)
- Create a new Pull Request