No Description
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Christian Kruse cd2b3ad5e4 deps.update --all 2 years ago
config initial commit 3 years ago
lib fix: typos 2 years ago
test fix: tests 3 years ago
.gitignore initial commit 3 years ago
LICENSE Initial commit 3 years ago
README.md version push 3 years ago
mix.exs deps.update --all 2 years ago
mix.lock deps.update --all 2 years ago

README.md

Microformats2

A Microformats2 parser for Elixir.

Installation

This parser is available in Hex:

  1. Add microformats2 to your list of dependencies in mix.exs:

    def deps do
      [{:microformats2, "~> 0.0.5"}]
    end
    

Usage

Give the parser an HTML string:

Microformats2.parse("""<div class="h-card">
  <img class="u-photo" alt="photo of Mitchell"
       src="https://webfwd.org/content/about-experts/300.mitchellbaker/mentor_mbaker.jpg"/>
  <a class="p-name u-url"
     href="http://blog.lizardwrangler.com/">Mitchell Baker</a>
  (<a class="u-url" href="https://twitter.com/MitchellBaker">@MitchellBaker</a>)
  <span class="p-org">Mozilla Foundation</span>
  <p class="p-note">
    Mitchell is responsible for setting the direction and scope of the Mozilla Foundation and its activities.
  </p>
  <span class="p-category">Strategy</span>
  <span class="p-category">Leadership</span>
</div>
""")

It will parse the object to a structure like that:

%{rels: [],
  rel_urls: [],
  items: [%{type: ["h-card"],
            properties: %{photo: ["https://webfwd.org/content/about-experts/300.mitchellbaker/mentor_mbaker.jpg"],
                          name: ["Mitchell Baker"],
                          url: ["http://blog.lizardwrangler.com/",
                                "https://twitter.com/MitchellBaker"],
                          org: ["Mozilla Foundation"],
                          note: ["Mitchell is responsible for setting the direction and scope of the Mozilla Foundation and its activities."],
                          category: ["Strategy",
                                     "Leadership"]}}]}

Dependencies

We need Floki for HTML parsing and HTTPotion for parsing URLs.

Features

Implemented:

Not implemented:

License

This software is licensed under the AGPL3.