Expurrel is a library that does short url decoding for each url shortener service. It supports most of the tiny url providers by doing a request to the tiny url provider and getting back the redirect code. Expurrel tries to be fast by also doing some simple caching.
To install expurrel:
gem install expurrel
e = Expurrel.new('http://bit.ly/aanv6P') e.decode == 'http://www.jaapvandermeer.com/2010/02/12/introducing-myself/'
The cache size is standard 1000 urls, to make it bigger:
Expurrel.cache = SimpleCache.new(:max_size => 10000)
Standard there is a list of about 200 providers. If one is missing, please add it to urlshorteners.txt or let me know by adding a issue.
e = Expurrel.PROVIDERS << 'bit.ly'
The source is maintained here:
github.com/japetheape/expurrel
An introductory post is here:
www.jaapvandermeer.com/2010/02/13/expurrel-a-library-to-decode-short-urls-in-ruby
-
Fork the project.
-
Make your feature addition or bug fix.
-
Add tests for it. This is important so I don’t break it in a future version unintentionally.
-
Commit, do not mess with rakefile, version, or history. (if you want to have your own version, that is fine but bump version in a commit by itself I can ignore when I pull)
-
Send me a pull request. Bonus points for topic branches.
Copyright © 2010 Jaap van der Meer. See LICENSE for details.