history4feed
Before you begin...
We use history4feed in the web version of Obstracts which includes many additional features over those in this codebase. You can find out more about the web version here.
Overview
It is common for feeds (RSS or XML) to only include a limited number of posts. I generally see the latest 3 - 5 posts of a blog in a feed. For blogs that have been operating for years, this means potentially thousands of posts are missed.
There is no way to page through historic articles using an RSS or ATOM feed (they were not designed for this), which means the first poll of the feed will only contain the limited number of articles in the feed. This limit is defined by the blog owner.
history4feed can be used to create a complete history for a blog and output it as an RSS feed.
history4feed offers an API interface that;
- takes an RSS / ATOM feed URL
- downloads a Wayback Machine archive for the feed
- identified all unique blog posts in the historic feeds downloaded
- downloads a HTML version of the article content on each page
- stores the post record in the databases
- exposes the posts as JSON or XML RSS
Install
Download and configure
# clone the latest code
git clone https://github.com/muchdogesec/history4feedConfiguration options
history4feed has various settings that are defined in an .env file.
To create a template for the file:
To see more information about how to set the variables, and what they do, read the .env.markdown file.
Build the Docker Image
sudo docker compose build
Start the server
Access the server
The webserver (Django) should now be running on: http://127.0.0.1:8002/
You can access the Swagger UI for the API in a browser at: http://127.0.0.1:8002/api/schema/swagger-ui/
Useful supporting tools
- Full Text, Full Archive RSS Feeds for any Blog
- An up-to-date list of threat intel blogs that post cyber threat intelligence research
- Donate to the Wayback Machine
Support
Minimal support provided via the DOGESEC community.

