✌️This repository contains html2rss
feed configs for many websites.
👉Find all feed configs in the configs/
directory.
☝️A handy usage method is via html2rss-web
.
💪 Contributions are more than welcome!
Fork this repository,
add your feed config and
create a pull request.
There's a generator for that! 🆒
make config domain=domainname.tld name=whatever
Changedomain
andname
values to desired values.- Head to the generated files and add the selectors and options.
html2rss
's README explains how to build a feed config. Or browse the existing ones for inspiration. - Fetch the feed, run:
bin/fetch domainname.tld/whatever
And with dynamic parameters:
bin/fetch domainname.tld/whatever id=42 foo="bar baz"
Sometimes there are structurally equal pages with different URLs. In such a case you can add variables to the channel's attributes.
In your feed config:
channel:
url: "http://domainname.tld/whatever/%{id}.html"
See the more complex formatting of the sprintf
method for formatting options.
You have to provide the parameters to the spec, too:
include_examples 'config.yml', 'domainname.tld/whatever.yml', id: 42
Programmatic usage:
config = Html2rss::Configs.find_by_name('domainname.tld/whatever', { id: 42 })
Add to your Gemfile:
gem 'html2rss-configs', git: 'https://github.com/html2rss/html2rss-configs.git'
Use it in your code:
require 'html2rss/configs'
config = Html2rss::Configs.find_by_name('domainname.tld/whatever')
This will return the feed config.
If you're running html2rss-web
,
you have nothing more to do! 🎉
Modifying existing or adding new feed configs will trigger the CI to fetch the feed and check for the presence of feed items.
See .travis.yml -> script which commands execute during build.