microformats2/README.md
2015-12-23 11:56:37 -08:00

4.2 KiB

Microformats2

Development Status

This gem sat unmaintained for quite a long time. It's now under new management. Work will begin shortly on getting it on par with the other Microformats2 parsers and the current state of the spec. (2015-12-23)

Build Status Code Climate

A Ruby gem to parse HTML containing one or more microformats2 and return a collection of dynamically defined Ruby objects.

A work in progress.

Implemented:

Not Implemented:

Current Version

2.0.1

Requirements

  • "nokogiri"
  • "json"
  • "activesupport"

Installation

Add this line to your application's Gemfile:

gem 'microformats2'

And then execute:

$ bundle

Or install it yourself as:

$ gem install microformats2

Usage

require "microformats2"

source = '<div class="h-card"><p class="p-name">Jessica Lynn Suttles</p></div>'
collection = Microformats2.parse(source)
# using singular accessors
collection.card.name.to_s #=> "Jessica Lynn Suttles"
# using plural accessors
collection.cards.first.names.first.to_s #=> "Jessica Lynn Suttles"

source = '<article class="h-entry">
  <h1 class="p-name">Microformats 2</h1>
  <div class="h-card p-author"><p class="p-name">Jessica Lynn Suttles</p></div>
</article>'
collection = Microformats2.parse(source)
collection.entry.name.to_s #=> "Microformats 2"
# accessing nested microformats
collection.entry.author.format.name.to_s #=> "Jessica Lynn Suttles"

# getting a copy of the canonical microformats2 hash structure
collection.to_hash

# the above, as JSON in a string
collection.to_json
  • source can be a URL, filepath, or HTML

Authors

Contributions

  1. Fork it
  2. Get it running (see Installation above)
  3. Create your feature branch (git checkout -b my-new-feature)
  4. Write your code and specs
  5. Commit your changes (git commit -am 'Add some feature')
  6. Push to the branch (git push origin my-new-feature)
  7. Create new Pull Request

If you find bugs, have feature requests or questions, please file an issue.

Specs

To update spec cases that are scraped from other sites. Warning: This could break specs.

rake specs:update

To run specs

rake spec

To keep specs running

guard

License

Microformats2 is dedicated to the public domain using Creative Commons -- CC0 1.0 Universal.

http://creativecommons.org/publicdomain/zero/1.0