crog
crog
Crog is a simple Crystal library to parse up the Open Graph meta data for web pages. If you have ever wondered how does sites like Reddit, Facebook etc fetch the relevant images and other metadata from 3rd party sites, this is it.
Special thanks to https://metascraper.js.org/ whose rules i referenced throughout my development.
Installation
Add this to your application's shard.yml
:
dependencies:
crog:
github: rishavs/crog
Usage
require "crog"
To use the library, simple call the Parse method as;
mdata = Crog::Parse.new(url)
the variable here will hold an object with attributes;
property image : String | Nil = nil
property image_width : Int32 | Nil = nil
property image_height : Int32 | Nil = nil
property url : String | Nil = nil
property description : String | Nil = nil
property title : String | Nil = nil
property author : String | Nil = nil
property date : String | Nil = nil
property logo : String | Nil = nil
property tags = [] of String
Development
A lot of edge cases are not yet picked up. I have left them in the crog.cr file for future reference.
Contributing
- Fork it (https://github.com/your-github-user/crog/fork)
- Create your feature branch (
git checkout -b my-new-feature
) - Commit your changes (
git commit -am 'Add some feature'
) - Push to the branch (
git push origin my-new-feature
) - Create a new Pull Request
Contributors
- Rishav Rishav Sharan - creator, maintainer
Repository
crog
Owner
Statistic
- 0
- 0
- 0
- 0
- 0
- about 6 years ago
- September 3, 2018
License
MIT License
Links
Synced at
Sun, 17 Nov 2024 04:03:33 GMT
Languages