Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Provides access to the Alchemy text mining API - http://www.alchemyapi.com/
Ruby
branch: master

Update dependency on faraday to 0.9.0

Closes #19
latest commit 0aa71e19bb
ken.judy@simonandschuster authored johnallen3d committed

README.md

AlchemyAPI

Build Status Code Climate Coverage Status Dependency Status Gem Version

This is a Ruby Client Library that provides access to the Alchemy text mining API. The current version targets the following API's:

  • Keyword Extraction
  • Text Extraction
  • Title Extraction
  • Entity Extraction
  • Sentiment Analysis
  • Targeted Sentiment Analysis
  • Relation Extraction
  • Concept Tagging
  • Text Categorization
  • Language Detection
  • Author Extraction
  • Taxonomy
  • Image Tagging

Not yet implemented API's:

  • Content Scraping
  • Microformats
  • RSS / ATOM

Installation

Add this line to your application's Gemfile:

gem 'alchemy-api-rb', :require => 'alchemy_api'

And then execute:

$ bundle

Or install it yourself as:

$ gem install alchemy-api-rb

Usage

You'll need to request an API Key.

Set your API Key in an initializer or something similar:

AlchemyAPI.key = "xxxxxxxxxxxxxxxxxx"

You may set the key along with other config settings:

AlchemyAPI.configure do |config|
  config.apikey = "xxxxxxxxxxxxxxxxxx"
  config.output_mode = :xml # not yet supported
end

Request keyword extraction for a string of text:

results = AlchemyAPI.search(:keyword_extraction, text: "hello world")

or

results = AlchemyAPI::KeywordExtraction.new.search(url: 'http://www.alchemyapi.com/')

or

results = AlchemyAPI::KeywordExtraction.new.search(html: "<html><body>lorem ipsum</body></html>")

Results for keyword extraction are returned as a array of keywords:

[
  {
         "text" => 'lorem ipsum',
    "relevance" => "0.993164"
  }
]

Testing

The specs are expecting your API Key as an environment variable named ALCHEMY_API_KEY. You can export it locally or prepend the test command like so:

ALCHEMY_API_KEY="this-is-my-40-character-key" bundle exec rake test

If you would like to expirement with the API you can run the console rake task and use the commands above to set the API Key issue search commands:

bundle exec rake console

TODO

  1. Add missing Alchmey API search modes
  2. Add the ability to search all supported API's in a single request?
  3. Add support for raw output (JSON, XML and RDF)?

Contributing

alchemy-api-rb is work of several contributors. You're encouraged to submit pull requests, propose features and discuss issues.

See CONTRIBUTING.

License

MIT License. See LICENSE for details.

Something went wrong with that request. Please try again.